在下面的代码中,"index"的值从0跳到10 ......我不知道这是怎么回事......
int main()
{
int length = 10;
int index = 0;
printf("index is %d\n", index);
for (index = 0; index < length; index++);
{
printf("index is %d\n", index);
}
printf("answer\n");
return EXIT_SUCCESS;
}
Run Code Online (Sandbox Code Playgroud)
这是输出:
index is 0
index is 11
answer
Run Code Online (Sandbox Code Playgroud)
你的代码实际上等同于:
int main()
{
int length = 10;
int index = 0;
printf("index is %d\n", index);
for (index = 0; index < length; index++)
{
// empty loop
}
{
printf("index is %d\n", index);
}
printf("answer\n");
return EXIT_SUCCESS;
}
Run Code Online (Sandbox Code Playgroud)
你需要删除;这里:
for (index = 0; index < length; index++);
^ remove this semicolon
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
76 次 |
| 最近记录: |