c++ - 在这种情况下如何存储数组的总和
问题描述
问题出在内部for循环中
for (int i=0, j=0; i<n; i++, j++){
if (i != j){
cout << sum = sum + arr[j] <<endl;
*//error: overloaded function type*
}
}
cout << sum = sum + arr[j] <<endl;
解决方案
这是运算符优先级的问题。
可以通过将表达式放在括号中来解决:
cout << (sum = sum + arr[j]) << endl;
然而,这是一种非常糟糕的风格,你应该把它分成两行:
sum += arr[j];
cout << sum << endl;
你未来的自己,以及任何阅读你代码的人,都会感谢你。
推荐阅读
- gradle - 在 kotlin 构建文件中执行注册任务
- laravel - 如何使用变形术
- google-cloud-pubsub - Google Pub/Sub 模拟器 - 当模拟器不在本地主机上运行时,HTTP API 不起作用
- angular - 如何从角度工作中制作悬停属性“(mouseover)”?
- javascript - 在 draft.js 中输入文本
- javascript - Video.js 和 Videojs-record - 要求按下按钮开始录制
- java - 无法在某些设备上以编程方式启用 Wifi
- angular - 如何使用 Angular 在 AgGrid 中获取多选下拉菜单
- android - 无法从 Google Fit API 获取每日步数
- docker - 如何构建“不断发展”的 docker 镜像