为什么sizeof(A)与sizeof('A')为什么值不一样?

如题所述

第一个检查的是A这个变量的大小,而第二个检查的是一个字符'A'的大小。。所以不一样
温馨提示:内容为网友见解,仅供参考
第1个回答  2014-11-08
‘A’是一个字符,A是要你自己定义的吧,所以sizeof(A)是根据你定义的A是什么类型的变量来确定的。本回答被网友采纳

为什么sizeof(A)与sizeof('A')为什么值不一样?
第一个检查的是A这个变量的大小,而第二个检查的是一个字符'A'的大小。。所以不一样

sizeof(a)和sizeof(a)?
两者区别在于所表示的含义和计算结果不同。1、sizeof(a)表示的是数组a在内存中所占用的字节数。当数组a被定义时,编译器会根据数组元素的类型和数量计算出数组a所占用的内存大小,然后使用sizeof运算符可以得到这个大小。2、sizeof(a【0】)表示的是数组a中第一个元素所占用的字节数。在C\/C++中...

sizeof()\/ sizeof()怎么理解?
a[0] 是指第0行的3个元素 因而size of(a[0])=3;最后答案就是 9\/3=3;

sizeof(a)和sizeof(*a)是什么意思,为什么值是36和4
sizeof(a) 就是 a整个的存储字节数 就是 9*4=36 a相当于a[0] 就是一个存储单元的内容 sizeof(*a) 就相当于 sizeof(int) =4

sizeof(char)等于1,那sizeof(‘a’)为什么等于2?
编译器不同,结果会有所不同。如果是VC、VS编译器,结果为1,表示字符中的字节数。如果结果是2,那么只有一个解释,‘a’是整型常量,是unsigned int,且楼主的编译器中int的宽度为16位2字节,所以是2。

C++ 关于size()和sizeof()
sizeof(a)返回的是对象占用内存的字节数,而a.size()是string类定义的一个返回字符串大小的函数,两个是完全不一样的概念。明确两者的概念和作用:1、size()函数:c++中,在获取字符串长度时,size()函数与length()函数作用相同。 除此之外,size()函数还可以获取vector类型的长度。例如:vector <...

int(sizeof(a)\/sizeof(a[0]))是什么意思啊?
sizeof函数如果我没记错的话应该是求属于或者矩阵的大小,所以sizeof(a)就是数组a的大小,那么sizeof(a[0])就是数组a中第0个元素的大小,而属于中每个元素的大小都是一样的啊,因为每个元素类型一样,所以二者相除就是这个数组的长度,那前面那个int就是将这个值的类型由size_t强制转换为短整型int...

C语言sizeof('a')的返回值为什么是4,而不等于sizeof(char)
C语言里就是把字符常量当做了整型处理的.在c中'a'这类的是代表着'a'这类的ACSII的值..而在c++中'a'这类就代表一个字符常量 sizeof 'a'所以在VC++里,为 4 不为2 的原因.你注意看我第一句话..在c中这个字符常量是被当做一个整形来处理的 ...

a为数组名。sizeof(a)和sizeof(&a)有什么区别,sizeof(a)代表什么?希望...
sizeof(a)是把a作为一个数组类型来测试大小,结果是数组占用的字节数。sizeof(&a)是把&a作为一个地址类型来测试大小,结果是4(64位系统里可能是8)。数组名本身在计算中会自动转化成第一个元素的地址,但sizeof测试的时候不做计算,不转化。

sizeof("")与sizeof('')为什么第一个返回值是1 第二个是4 引号中是空...
sizeof("") 返回字符串占的空间大小,因是个空串,只有一个字符\\0,所以返回1,即占一个字节空间 sizeof(' ') 返回字符常量' '所占空间大小,C语言中字符常量被系统视作int类型数据,所以返回4,即占4个字节空间. 而C++中会返回1 ...

相似回答