for循环

来自cppreference.com
< c‎ | language
 
 
C语言

|- class="t-nv-h1" | colspan="5" | 基本主题 |-

|- class="t-nv-h1" | colspan="5" | 流程控制 |-

| |- |

预处理器
注释
关键字
ASCII码表
转义序列
C语言历史
条件执行语句
if语句

|

|-

循环语句

| |- |

for循环

|

|-

跳转语句

| |- |

|

|-

|- class="t-nv-h1" | colspan="5" | 函数 |-

函数声明 内联指示

|- class="t-nv-h1" | colspan="5" | 类型 |- | |- |

|

|-

指示符 cv指示符 存储类指示符 对齐指示符 (C99) 函数指示符 (C99) 字面值

| |- |

|

|-

|- class="t-nv-h1" | colspan="5" | 表达式 |-

计算顺序 操作符 操作符优先级 替代表示

|- class="t-nv-h1" | colspan="5" | 工具 |-

typedef 类型声明 属性 (C99) 转换

|- class="t-nv-h1" | colspan="5" | 杂项 |-

内嵌汇编
 

执行循环。

使用和while循环较为相似。

目录

[编辑] 语法

for ( init_expression ; cond_expression ; iteration_expression ) loop_statement

[编辑] 解释

除非有continue语句,上面的语法产生的代码等价于:

{
init_expression ;
while ( cond_exression ) {
loop_statement
iteration_expression ;
}

}

init_expression在循环开始之前执行。cond_expression会被计算得到一个值并转换为bool类型,在每一次循环开始之前。循环只在其值为true时继续执行。loop_statement会在每次循环中执行,然后则会执行iteration_expression

如果循环需要在循环中某个位置终止,break语句可以作为这个终止的语句。

如果循环需要跳到循环体尾部继续执行,可以使用continue语句。当循环体(loop_statement)中含有continue时,每个continue都会跳转到iteration_expression而不是继续执行之后的循环部分。这样,每次循环中iteration_expression都保证会被执行(除非我们用break跳出循环)。

[编辑] 关键字

for

[编辑] 示例

下面的示例演示用for循环操作数组

#include <stdio.h>
#include <stdlib.h>
 
#define SIZE 8
 
int main (int argc, char **argv)
{
    unsigned i = 0, array [SIZE];
 
    for( ; i < SIZE; ++i)
        array [i] = random() % 2;
 
    printf("Array filled!\n");
 
    for (i = 0; i < SIZE; ++i)
        printf("%d ", array[i]);
 
    printf("\n");
 
    return EXIT_SUCCESS;
}

输出:

Array filled!
1 0 1 1 1 1 0 0