关于计算数组元素
为什么在自己写的函数里面用sizeof算不出数组元素个数呢?#include <stdio.h>
int list_max(int);
int list_max(int list[])
{
int lenght;
lenght = sizeof(list) / sizeof(list);
printf("???:%d\n", lenght);
}
int main(void)
{
int n, lenght;
int list[] = {73, 108, 111, 118, 101, 70, 105, 104, 67, 77};
lenght = sizeof(list) / sizeof(list);
printf("!!!:%d\n", lenght);
list_max(list);
}
sizeof 指针了,不是数组
报错提示:warning: ‘sizeof’ on array function parameter ‘list’ will return size of ‘int *’ 对了,传入数组的是地址,不是整个空间
页:
[1]