我目前正在学习 C++,但我无法理解 for 循环的这种语法。
我知道 for(<T>: <V>)
(for-each)和标准 for(init; cond; incr)
但我之前没有遇到过以下内容
for (char ch; cin>>ch && !isdigit(ch); )
如果有人能阐明它,将不胜感激!
最佳答案
for (char ch; cin>>ch && !isdigit(ch); )
^^ A ^^ ^^^^^^^^ B ^^^^^^^^^^^^ ^ C ^
A:是初始化部分,但在这种情况下,它只声明了一个名为 ch
的 char
B:条件部分是否在每次迭代时执行
- 它开始将单个字符作为输入,然后如果不是数字则继续循环
C:是增量部分但为空,条件部分依赖于获取下一个输入(即增量)并导致循环终止
关于c++ - 这是一个有效的 for 循环吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32782142/