社区
C++ 语言
帖子详情
帮忙看看是怎么回事
grrrrrr
2004-08-01 05:44:02
vector<int> num;
int n;
while (cin >> n)
num.push_back(n);
for (int i = 0, n = 0; i != num.size(); i++)
n += num[i];
cout << n <<endl;
我跟踪了一下n,比如我输入50,60,70,在for循环体内n最后增加到了180。可是到了cout那一行,n就变成了最后输入的那个数,也就是70。我要晕了,谁帮忙看看啊?
Dev-Cpp 4.9.8.10
...全文
129
5
打赏
收藏
帮忙看看是怎么回事
vector num; int n; while (cin >> n) num.push_back(n); for (int i = 0, n = 0; i != num.size(); i++) n += num[i]; cout << n <<endl; 我跟踪了一下n,比如我输入50,60,70,在for循环体内n最后增加到了180。可是到了cout那一行,n就变成了最后输入的那个数,也就是70。我要晕了,谁帮忙看看啊? Dev-Cpp 4.9.8.10
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
grrrrrr
2004-08-01
打赏
举报
回复
啊,我怎么没有注意到,真不好意思...
p_s_w
2004-08-01
打赏
举报
回复
for (int i=0, n=0; ...)
定义了两个for循环局部变量i和n,这个n与前面定义的n是两个不同的变量,按照作用域规则,在for循环中的n将屏蔽for循环前面定义的n。
当for循环结束后,后一个n的作用域结束。cout输出的其实是前一个定义的n。
swordkitty
2004-08-01
打赏
举报
回复
因为在你的for循环中,for 每循环一次,你就把n赋值为0,所以在你用cout输出时,输出的是vector的最后一个元素,而不是它们的和;
kaphoon
2004-08-01
打赏
举报
回复
是这样的
int i=0,n=0;
等于定义了n,而不是单纯的赋值
所以有'70'这个结果
antijpn
2004-08-01
打赏
举报
回复
把
for (int i = 0, n = 0; i != num.size(); i++)
n += num[i];
改成
n=0;
for(int i=0;i!=num.size();i++)
n+=num[i];
android-sdk-windows.z09
android-sdk-windows.z09
消息队列基于MQ技术的完整知识体系:从基础理论到高可用架构的设计与实践
内容概要:本文系统梳理了消息队列(MQ)的完整知识体系,涵盖基础理论、主流中间件(RocketMQ、Kafka、RabbitMQ)详解、核心难题、性能调优、安全容灾、架构设计及面试考点。详细阐述了MQ的四大核心价值——系统解耦、削峰填谷、异步提速和数据流转;深入剖析了三大主流MQ的架构、特性、选型及高阶功能;全面总结了消息丢失、重复、乱序、堆积等经典问题的成因与解决方案,并提供了详尽的生产避坑规范与最佳实践。; 适合人群:具备一定编程基础,工作1-3年的研发人员。; 使用场景及目标:①理解消息队列的核心原理及其在系统解耦、流量削峰、异步处理中的应用;②掌握RocketMQ、Kafka、RabbitMQ的选型依据、核心机制(如事务、延迟消息、高可用)及生产调优;③解决消息丢失、重复消费、消息堆积等线上高频故障; 阅读建议:此资源以开发简化版Spring学习其原理和内核,不仅是代码编写实现也更注重内容上的需求分析和方案设计,所以在学习的过程要结合这些内容一起来实践,并调试对应的代码。
iperf3 arm64
https://blog.csdn.net/yeshennet/article/details/162893981
C++ 语言
65,210
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章