int a[15]; sizeof(a)//15*4=60 sizeof(a)/sizeof(int)=15 ---所以数组名并与完全等同于指针; 注意 数组名字 在参数传递的过程中,会退化为指针,这也是为什么指针作为参数传递,需要一个长度参数。 sizeof(数组名字)//是返回数组占用的内存大小 sizeof(指向数组的指针)//返回的是指针本身的大小...
在sizeof(str)中,str表示的含义是str[],因此返回整个数组的大小(这个大小在之前的数组定义中已经确定了);而pstr只是个指针,sizeof(pstr)只能返回指针本身占用的字节数而不能确定为它指向的内容分配的空间的大小。 (注意,地址常量绝不是指针,类型不同!虽然在函数的参数传递过程中,地址常量可以退化成对应的指针。这...
int size = sizeof(arr) / sizeof(arr[0]); ``` 在上面的例子中,我们定义了一个包含5个整数元素的数组arr。然后,我们使用sizeof运算符计算数组的大小,并将其除以每个元素的大小(即sizeof(arr[0]))来得到数组的长度。在这个例子中,sizeof(arr)将返回整个数组所占用的字节数,而sizeof(arr[0])将返回数...
别混淆了sizeof(数组名)和sizeof(指针) 2017-02-19 20:10 −我们在挨个儿输出一个数组中的元素时,最常用的就是用一个for循环来实现,简单了事。比如类似下面的代码片段: for(i = 0; i< length; i++) { printf(“数组元素是%d”, 数组[i]); } 用一个下标索引变量i来遍历整个数组,length是数组的...