有没有一种方法可以从函数中获取数组的长度?我需要找到一个数组的大小,但是它是在主函数中定义的,由于无法更改主函数,因此无法将数组的大小作为参数传递。有什么办法可以通过函数找到它吗?
数组的最大大小设置为大约100,但是实际输入将在大小1到20之间。因此,我也不能真正采用最大大小方法。
您可以在for循环中添加一个计数器,以查看下一行之前有多少个变量
void counter(int array[100]){
int counter=-1;
for (i=0; array!= '\0'; i++){
counter=counter+1;
}
return counter;
}
然后在主要部分
int arraysize = counter();
如果是字符数组,则
sizeof(<yourarray>) / sizeof(char)
否则,只需将char
更改为所需。