数组作为函数参数查找数组长度时出错
Array as function parameter error finding the length of the array
1. int minimum(int arr[]){
2.
3. int min,pos = 0;
4. min = arr[0];
5. int i;
6. for(i = 0;i<(sizeof(arr)/sizeof(*arr));i++){
7. if(arr[i]<min){
8. min = arr[i];
9. pos = i;
10. }
11. }
12. return arr[pos];
13. }
在第 6 行中,对于循环条件中的状态无法计算数组的大小......
int minimum(int arr[])
元素的数量在编译时是未知的,sizeof(arr)
不能值正确的值,它会值sizeof(int *)
,因为这是 arr 的类型
但在
void f()
{
int arr[3];
printf("%dn", sizeof(arr)/sizeof(*arr));
}
ARR 的大小在编译时是已知的
相关文章:
- 使用 thread 类在 C++ 中构造线程的动态数组时出错
- 将链表转换为指针数组时出错
- 为 NewObjectA() 函数创建 jvalues 的参数数组时出错 - JNI Invocation API
- 基于数组的列表 - 动态数组创建时出错
- 从斐波那契序列 c++ 中的数组中查找正确的元素时出错
- 分段 使用 MPI_Gather 收集字符数组时出错
- 读取字符串字符时出错 - 对于数组中的字符串值
- 声明数组>> int arr[] 时出错;在C++(虽然在 Java 中有效)?
- 在 c++ 中返回一维数组时出错
- 将 2D 数组传递给 C++ 中的函数时出错
- 在 c++ 上创建动态数组时出错
- 尝试返回指向 Visual Studio 中的动态数组的指针时出错C++
- 将 find_if() 与数组一起使用的代码段中出错
- 在比较特定输入中的程序的数组中出错
- 分段 填充数组时出错
- 数组作为函数参数查找数组长度时出错
- C++:用户定义的类型数组出错
- C++中的数组出错
- 我正在创建精灵数组出错
- 在将代码从Windows移植到Linux时删除数组出错