【C++】如何使用函数进行数组求和?传递数组指针的简单示例代码

举报
王博Kings 发表于 2020/12/30 01:46:30 2020/12/30
【摘要】 cookies[Arsize] 如果是输出输出地址的长度,比如sizeof cookies,这时输出的是整个数组长度 假如传递给了指针arr, sizeof arr 就输出的是指针的长度 可能理解比较抽象,我们采用实际代码举例: 代码中有详细注释 //通用的统计数组的和的函数#include<iostream>const int ArSize = 8;using ...

cookies[Arsize]

如果是输出输出地址的长度,比如sizeof cookies,这时输出的是整个数组长度

假如传递给了指针arr, sizeof arr 就输出的是指针的长度

可能理解比较抽象,我们采用实际代码举例:

代码中有详细注释



  
  1. //通用的统计数组的和的函数
  2. #include<iostream>
  3. const int ArSize = 8;
  4. using namespace std;
  5. int sum_arr(int arr[], int n);
  6. void print();
  7. int main()
  8. {
  9. int cookies[ArSize] = { 1, 2, 4, 8, 16, 32, 64, 128 };
  10. cout << cookies << " \t 数组地址" << endl;
  11. cout << sizeof cookies << " \t sizeof cookies\n";
  12. int sum = sum_arr(cookies, ArSize);
  13. cout << sum << "一共加起来就是这么多" << endl;
  14. print();
  15. //欺骗做法
  16. cout << "这里展示的是传递数组时的特性" << endl;
  17. cout << "前三个的和是:" << sum_arr(cookies, 3)<<endl<<endl;
  18. cout << "结果OK" << endl;
  19. print();
  20. cout << "这里展示的是传递数组时的特性" << endl;
  21. cout << "后四个的和是:" << sum_arr(cookies + 4, 4) << endl << endl;
  22. cout << "结果OK" << endl;
  23. cin.get();
  24. return 0;
  25. }
  26. int sum_arr(int arr[],int n)
  27. {
  28. int total = 0;
  29. cout << arr << "\t arr地址" << endl;
  30. cout << sizeof arr << "\t sizeof arr\n";
  31. for (int i = 0; i < n; i++)
  32. total = total + arr[i];
  33. return total;
  34. }
  35. void print()
  36. {
  37. cout << endl;
  38. cout << "=======================================" << endl;
  39. cout << endl;
  40. }

输出结果:

 

文章来源: kings.blog.csdn.net,作者:人工智能博士,版权归原作者所有,如需转载,请联系作者。

原文链接:kings.blog.csdn.net/article/details/85056610

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。