考虑以下代码
int main(){
int sum = 0, value = 0;
while (std::cin >> value)
sum += value;
std::cout << "sum is: " << sum << std::endl;
return 0;
}
&gt;&gt; 运算符的返回值是什么,对其进行while循环计算?程序终止于EOF输入(对于Windows,为Ctrl + Z)。这是否意味着在EOF的情况下将0存储到cin?它与EOF的ASCII值有什么关系吗?
答案 0 :(得分:1)
returns basic_ifstream
的引用:
basic_istream& operator>>
在if
的上下文中,除非在其状态中设置true
或std::ios_base::failbit
,否则转换为std::ios_base::badbit
。
答案 1 :(得分:0)
根据this reference,返回类型为istream&
。
答案 2 :(得分:0)
它会返回const
的非std::cin
引用。