您的位置:首页 > 编程语言 > C语言/C++

C语言中静态数组和动态数组

2013-01-29 21:17 309 查看
1、对静态分配的数组和动态分配的数组分别使用sizeof获得其长度,结果是不一样的:

int a[10]; 则sizeof(a)等于10*sizeof(int)。

int*
a=(int*)malloc(10*sizeof(int));则sizeof(a)等于sizeof(int*)。

2、数组名作为函数的参数时

数组名作为函数的参数传递时,在函数内使用sizeof(a)(此处假设a为数组),结果都为指针的长度(无论a为静态数组还是动态数组),而非数组的实际长度。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: