c语言中数组做为函数参数传递,在函数内部操作数组如何知道是否越界?

例如:
int a[10];
void func(int input[])
{
//在函数内部如何知道操作input时是否会越界
}

第1个回答  2013-03-14
C不检查越界行为;
所以;
1:可以在内部假设数组数目;
2:可以用两个arg,一个数组, 一个数组数目;
3:可以传递两个指针,数组的起始指针,结束指针。
第2个回答  2013-03-14
不会知道的,所以一般要给函数的形参加个数组的长度。
void func(int input[], int size){....}
第3个回答  2013-03-14
1.在数组最后一个字符加上个标志
2.多加一个 数组长度的 参数
第4个回答  2013-12-24
可以传递两个指针,数组的起始指针,结束指针。本回答被提问者采纳
第5个回答  2013-03-14
没有办法“测量”数组长度,要加一个参数
相似回答