在c++中sizeof()的相关问题

sizeof()是怎么用的,是返回字节数的吗
那么如果a=123456789 那么sizeof(a)的值为什么返回的是4字节呢。不是应该是9个字节的吗?如果char a=“”,那么sizeof(a)的返回值却是1。不是应该为0吗?
求指点。

sizeof()是返回类型大小,楼主的例子:a=123456789,说明a是一个整形,在VC中,整形为四个字节,char字符型在VC中是一个字节的大小,简而言之,sizeof()函数,是用来判断一个变量的类型(通过判断该变量的大小,比如:大小为4的为整形)
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-04-25
sizeof为编译期宏,用于取得入参占用的内存大小,单位为字节
常见问题
有/无符号的char sizeof(char)=1
有/无符号的short sizeof(short)=2
float 对应4
double对应8
所有类型指针对应4
sizeof(数组名)数组所有元素总字节
数组元素个数=sizeof(数组名)/sizeof(单个元素)

sizeof求结构体大小时还涉及内存边界对齐问题
。。。
第2个回答  2012-07-29
因为sizeof返回的是数据类型的字节 a= 123456789 说明a是整型 整型是四个字节
第3个回答  2012-04-25
sizeof是求类型内存大小的
第4个回答  2012-04-25
它是反回占内存多大字节,int是4个字节char是1个
相似回答
大家正在搜