c - 带有大小的数组参数有什么影响?

标签 c

下面的 foo 函数查找给定数字的第一次出现并返回其索引。如果未找到该数字,则返回数组的大小(n):

‪int foo(int arr[10], int num, int n)‬
{
‫;‪   int *p‬‬
‪   for (p=arr;(*p!=num) && (p<arr+n);++p);‬‬
   ‫;‪return p-arr‬‬
}

我的问题是:参数 int arr[10] 是否与编写 int * arrint arr[] 相同事情?因为当我传递一个大小为 100 的 int 数组时,我可以迭代它,并且不限于 10 个元素。

最佳答案

My question is: is the parameter int arr[10] the same as writing int *arr or int arr[] for that matter?

是的,只要它是函数参数列表声明的一部分并且数组是一维的。

关于c - 带有大小的数组参数有什么影响?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14625264/

相关文章:

Clion中默认创建C项目

c - 在 C/C++ 中使用 printf 打印 '%'

c - 我想用 C 创建一个简单的汇编程序。我应该从哪里开始?

c - 如何以 super 用户权限运行 Apache 模块?

c - 这个按位表达式如何帮助找到两个整数之间的最小值和最大值?

c - 在头文件中有一个结构

c - Linux/C 如何正确结束命令行程序

c - 程序没有显示错误,但无法编译。你能帮我解决我需要做的事情吗

c - _sbrk 函数在放置在静态库中时找不到

c - Openssl:加密输出问题