i*****t 发帖数: 636 | 1 举个简单例子,比如一个function有两个输入,第一个是整数数组,第二个是数组的si
ze,在主程序中调用时数组大小跟数组是一致的,比如
int arr[5] = {1, 2, 3, 4, 5};
func(arr, 5);
但如果不一致,比如上述例子中第二个输入为10,那么怎么在func中check呢?如果无法
check的话应该怎么处理呢?thanks | i***1 发帖数: 147 | 2 5=sizeof(arr)/sizeof(int) | t****t 发帖数: 6806 | 3 在func里肯定是没法check的, 因为你需要接收任意大小的数组, 所以你的类型一定是
int*, 即int [N]退化成int*了.
si
无法
【在 i*****t 的大作中提到】 : 举个简单例子,比如一个function有两个输入,第一个是整数数组,第二个是数组的si : ze,在主程序中调用时数组大小跟数组是一致的,比如 : int arr[5] = {1, 2, 3, 4, 5}; : func(arr, 5); : 但如果不一致,比如上述例子中第二个输入为10,那么怎么在func中check呢?如果无法 : check的话应该怎么处理呢?thanks
| j********8 发帖数: 2201 | 4 func没法check,传过来的是pointer |
|