C获取数组长度

来源:互联网 发布:java游戏下载宝软 编辑:程序博客网 时间:2024/04/29 21:10

如果是int型数组,举例如下

int a[] = {1, 3, 5, 7, 4};

则数据长度可以直接sizeof函数

int N = sizeof(a)/sizeof(int); // N = 5

但是,要注意,当数组a以地址形式作为参数传入函数中时,此时如果采用此方法,得到的数据组长度则为1,例如下例

void fun(int *a)

{

int N = sizeof(a)/sizeof(int); // N = 1
}


所以,可以在调用函数之前将数组长度计算出来

int a[] = {1, 3, 5, 7, 4};

int N = sizeof(a)/sizeof(int); // N = 5

fun(a, N);


0 0
原创粉丝点击