您的位置:首页 > 其它

关于使用sizeof()求数组的长度

2014-04-20 11:46 148 查看
看征服C指针,在p131关于sizeof()求数组长度这一知识点做了一个小测试,程序代码如下:

#include <stdio.h>

void func( int str[])
{
printf("the length of the array is %d\n",sizeof(str));
}
int main()
{
int array[]={1,2,3,4,5,6} ;

func(array);
printf("the length of the array is %d\n",sizeof(array));

system("pause");
return 0;
}


输出结果如下:


看到这个结果,很开心,也证实了数组作为函数参数时,传递的只是指向数组开始元素的指针而已。所以在func函数中str只是指向int的指针,在main()函数中,使用数组作为sizeof运算符的操作符时,“数组解读成指针”的规则就会被抑制,此时返回的是数组全体的大小。所以有了上面的结果~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: