c++ - 为什么我的函数总是返回 0 而不是返回 sum 结果?
问题描述
我刚开始学习 C++,现在我正在制作一个简单的数组求和函数。
为什么我的代码输出总是0?这是否意味着我的函数返回"0"
?
如果我cout
输入函数,它会显示正确的求和结果。
#include <iostream>
using namespace std;
int ArraySum(int arr[], int size){
int sum=0;
for(int i=0 ; i<size; i++){
cin >> arr[i];
sum +=arr[i];
}
return sum;
}
int main()
{
int n, sum;
cin >>n;
int arr[n];
ArraySum(arr, n);
cout << sum;
return 0;
}
解决方案
您没有将返回值分配给返回的sum
时间。
您有 2 个选项:
将指针传递给
sum
,并在内部取消引用ArraySum()
将返回的值分配给
ArraySum()
intsum
。
推荐阅读
- php - 条带支付模块上的 SSL 证书错误
- python - OpenCV中圆圈周围的锯齿状边缘 - Python
- python - 前缀不一致的python包安装位置
- html - SVG + CSS;flexbox 环境中的剪辑路径
- cakephp - CakePHP3 - 未保留 Cookie 值
- javascript - 来自 javascript 的 post-css 动态变量
- html - 如何渲染在打字稿中使用 innerHTML 添加的材料元素?
- bash - 获取文本文件“bash”中特定字符之间的字符串块
- neural-network - Caffe CNN:卷积层内过滤器的多样性
- firebase - Firebase - 尝试在 Ionic 应用程序中使用 Facebook 登录后出现错误代码 24