我从C ++ Primer中复制了这段代码,作为while循环的一个例子,并没有输出任何东西。我正在使用g ++。
#include <iostream>
int main()
{
int sum = 0, val = 1;
// keep executing the while as long val is less than or equal to 10
while (val <= 10) {
sum += val; // assigns sum+ val to sum\
++val; // add 1 to val
}
std::cout << "Sum of 1 to 10 inclusive is "
<< sum << std::endl;
return 0;
}
答案 0 :(得分:11)
sum += val; // assigns sum+ val to sum\
摆脱行尾的反斜杠。那是一个线条延续的角色。它导致下一行连接到此行;换句话说,++val
成为“分配总和+ val求和”评论的一部分。
答案 1 :(得分:4)
sum += val; // assigns sum+ val to sum\ <-- typo
++val; // add 1 to val
你在sum += val;
行发错了。最后的“\”使以下行成为注释,从而使while
无限循环val
从未增加。删除“\”,然后就可以了。
答案 2 :(得分:1)
这是一个简单的错误,在评论后删除\#34; //将sum + val分配给&#34;。