关于使用sizeof()求数组的长度
2014-04-20 11:46
148 查看
看征服C指针,在p131关于sizeof()求数组长度这一知识点做了一个小测试,程序代码如下:
输出结果如下:
看到这个结果,很开心,也证实了数组作为函数参数时,传递的只是指向数组开始元素的指针而已。所以在func函数中str只是指向int的指针,在main()函数中,使用数组作为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运算符的操作符时,“数组解读成指针”的规则就会被抑制,此时返回的是数组全体的大小。所以有了上面的结果~
相关文章推荐
- 发现关于数组求其长度 strlen 和 sizeof的问题
- C++中使用sizeof取得数组长度
- 关于sizeof在调用函数中获取被调函数数组长度的思考
- 关于对数组及指针使用sizeof的一点心得
- 关于对字符串、数组处理的常见问题与方法,如获取带有空格字符串长度,数组长度等。getline(),sprintf()使用。
- 不使用sizeof求得数组长度
- sizeof关于数组、指针、基本数据类型的使用
- 使用sizeof();求数组长度
- 关于C++中sizeof()、数组长度和函数传参的一点心得
- 关于数组做形参,用sizeof测长度的问题
- 有一个字符数组的内容为:"student a am i",请你将数组的内容改为"i am a student". 要求: 不能使用库函数。只能开辟有限个空间(空间个数和字符串的长度无关)。
- sizeof求struct各种组合的长度,以及指针,字符数组的长度
- 使用零长度数组
- 关于sizeof 指针和数组的讨论
- 关于数组的一些经常使用函数
- 关于零长度数组
- 关于使用Javascript进行的数组克隆测试_ .slice(数字)_ .shift()
- 数组与字符串长度sizeof()、strlen()、string的length()和size()
- 一个不错的关于sql数组的使用例子
- 关于使用mxGetPr从MATLAB向C中传递数组的相关问题