旅游景点网站建设毕业设计说明,页面设计包括哪些内容,网站开发工资,优化问题创作不易#xff0c;本篇文章如果帮助到了你#xff0c;还请点赞支持一下♡#x16966;)!! 主页专栏有更多知识#xff0c;如有疑问欢迎大家指正讨论#xff0c;共同进步#xff01; 给大家跳段街舞感谢支持#xff01;ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ… 创作不易本篇文章如果帮助到了你还请点赞支持一下♡)!! 主页专栏有更多知识如有疑问欢迎大家指正讨论共同进步 给大家跳段街舞感谢支持ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ 函数基本概念知识函数的基本概念、含义、结构 目录
传递就是复制
数组传入函数 传递就是复制
#include stdio.h
int add(int a, int b);
int main()
{int a 10,b 20;printf(%d\n,add(a,b));return 0;
}
int add(int a,int b)
{int sum0;sumab;return sum;
}
修改add函数中的a并不会改变main函数中的a 当实参a传入add函数中并不是a真正传入函数中而是以复制的方式传给了add中的a 当传入地址时复制的就是地址传入基本类型数据时复制的就是参数值 函数的数据传递复制方式 基本类型复制 数值 指针类型复制 地址 数组传入函数
一个传入数组求和的函数如下
#include stdio.h
int add_all(int a[]);
int main()
{int arr[]{6,1,4,5,7};printf(%d\n,add_all(arr));return 0;
}int add_all(int a[] ) //目的传入数组 但是运行结果只有数组首位元素被传入
{int sum0;int lensizeof(a)/sizeof(a[0]);int i;for(i0;ilen;i){suma[i]; //结果为数组首位数据不为期待的数组求和}return sum;
} 结果为什么不是所期待的数组求和而只输出了数组的首位数据 原因是int add_all(int a[ ] ) 中传入函数的a[ ]并不是整个数组而是数组第一位数据的地址是指针类型 传入的数组长度为1只有数组首位元素6这一个数据。 如果想将整个数组传入函数中就需要给定数组的长度len 传入的a[ ] 仍然为数组第一位的地址但是给定了len长度数组第一位加上len长度的偏移就可以遍历整个arr数组了。 具体实现如下
#include stdio.h
int add(int a, int b);
int add_all(int a[],int len);
int main()
{int arr[]{6,1,4,5,7};printf(%d\n,add_all(arr,sizeof(arr) / sizeof(arr[0]) ) );return 0;
}int add_all(int a[],int len)
{int sum0;int i;for(i0;ilen;i){suma[i]; // *(ai)}return sum;
}