tzkr.net
当前位置:首页 >> 为什么C++中sizEoF(ArrAy)/sizEoF(ArrAy[0])没用 >>

为什么C++中sizEoF(ArrAy)/sizEoF(ArrAy[0])没用

不然你觉得是多少 C++字符串就老老实实用 std::string,何必折腾 char[]

size=sizeof(array)/sizeof(int); sizeof返回的值为占内存的大小,所以size的值应该为6.然后后面的for循环输出该数组中的所有元素

int* a[3][4]; //这个二维数组布局是这样的 //[0] x, x, x, x //[1] x, x, x, x //[2] x, x, x, x //这是整个二维数组的大小 // 3*4*sizeof(int*) = 3*4*4 = 48 assert( sizeof(a)==48 ); //*a取的是二维数组的第1行的指针,每行有4个int*,则大...

你好 我来解答一下。 首先你下面两个说法是错误的。 1.数组名a只是数组第一个元素的地址 数组名a只是和数组第一个元素的地址的值相同而已, 两者类型是不一样的。比如说一个long b=10,和short c = 10。 2.为什么sizeof()根据数组第一个元素的地...

如果你是char数组,就sizeof(a)/sizeof(char);如果是int数组,就sizeof(a)/sizeof(int),诸如此类

sizeof(arr1),arr1是数组,arr1里面是int变量 占据4个字节,所以3个变量占据12个字节。 int *source ,source是一个指针,若是sizeof(source)之后你会发现是4 因为所有的指针都是大小为4 *source是指针所指向的元素,int类型 占据4个字节 所以...

我也想了很久,大概是由于sizeof()的返回值的原因,稍后补充 #includeint main(){ for(int i=-4;i

因为在C++中数组名其实是这个数组的指针,sizeof(name)表示该数组的大小,你应该也知道name[5]实际上是被作为一个元素看待的

p是一个指针,只是指向了字符串char[3]而已。所以sizeof(p)不是字符串占的空间也不是字符数组占的空间,而是一个字符型指针占的空间。所以sizeof(p)=4,在C/C++中一个指针占4个字节 我也琢磨了一下,并找了相关资料,真是找不到能求用指针p所指...

sizeof是在编译时由编译器根据表达式类型计算所占空间,不是在运行时。 假如int是占4个字节,那么表达式sizeof( int )在编译后被替换为常量4。 用变量定义数组是C语言的C99支持,但是C++目前的标准也没支持这种语法(C++14我就不知道了),不过G...

网站首页 | 网站地图
All rights reserved Powered by www.tzkr.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com