Moh*_*q J -3 c++ for-loop conditional-statements
考虑一个arr[10]大小为10 的数组.在获取/显示数据时,我们使用以下常见语法的for循环
for(int i=0;i<10;i++)
Run Code Online (Sandbox Code Playgroud)
如果是字符串,就像
for(int i=0;strlen(arr)>i;i++)
Run Code Online (Sandbox Code Playgroud)
但我在某处读过一个更简单的表达式,arr[i]可以只用在条件的位置.我已经尝试运行具有该条件的代码.但是我收到了一个错误.那么有一个类似的,简单的条件表达式可以用于数组/字符串吗?
如for语句文档中所述:
条件可能是声明
使用以下代码演示:
int main(){
int arr[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };
for (int i = 0; int x = arr[i]; ++i){
std::cout << x << std::endl;
}
}
Run Code Online (Sandbox Code Playgroud)
退出循环一旦arr[i]变成0和被分配到x导致整个情况,以评价false.为什么会有更详细的信息:
使用brace-or-equals初始化程序声明单个变量.在每次迭代之前评估初始化程序,如果声明的变量的值转换为false,则退出循环.
既然你说简单和c ++,请使用std :: string.
std::string str = ???;
for(char& c : str) {
do_things_with(c);
}
Run Code Online (Sandbox Code Playgroud)
摘自这篇文章.
| 归档时间: |
|
| 查看次数: |
336 次 |
| 最近记录: |