昨晚調試程序時,產生了溢出,發現對c語言中有關數據類型和機器字長的關系一直很模糊,隨即找了些資料學習。(以下描述來自c++ primer 4th edition)
char类型通常是单个机器字节(byte)。
short、int和long类型都表示整型值,存储空间的大小不同。一般, short类型为半个
机器字(word)长, int类型为一个机器字长,而long类型为一个或两个机器字长(在32位机
器中int类型和long类型通常于长是相同的)。
类型float、double和long double分别表示单精度浮点数、双精度浮点数和扩展精度浮
点数。一般float类型用一个字(32位)来表示, double类型用两个字(64位)来表示,long
double类型用三个或四个字(96或128位)来表示。
以上描述說明每一種數據類型所占的存储空间的大小并不是固定不變的,而是根據機器字長而變化的。
May 03, 2007
Subscribe to:
Post Comments (Atom)
1 comment:
Thank you, I will continue.
Post a Comment