c - 两个循环之间哪个最好?

标签 c

int i;
for(i=0;i<=5;++i)
{ printf("my name");
}

for(int i=0;i<=5;i++)
{  printf("my name");
}

请解释一下这两个循环的工作原理以及它们之间的区别以及哪个循环最好?

最佳答案

我猜第二个循环是

for(int i=0;i<=5;i++) {  printf("my name\n"); };

第一个的区别在于i的范围。对于上面的循环,它只是 for 循环的主体。

因此,如果您在两个循环之后添加类似的内容

printf("finally i=%d\n", i);

在第二种情况下它不会编译(因为 i 甚至不会在最后一个 printf 中定义)。

阅读维基页面 scopes变量。

顺便说一句:作为初学者:始终以 \n 结束 printf 中的格式字符串(或了解 fflush)。并始终使用所有警告和调试信息进行编译 (gcc -Wall -Wextra -g)

关于c - 两个循环之间哪个最好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27732353/

相关文章:

c - 指针是先赋值还是递增?

c - 使用指向 char 的指针时如何使用 snprintf

c - 使用 time.h 的奇怪 CLOCKS_PER_SEC 值

c - union 嵌套在返回垃圾值的结构中

c - 当我点击我的子窗口时,为什么我得到 WM_MOUSEACTIVATE?我让它把焦点转移到 parent 身上,这会搞砸 child 杀死焦点逻辑

c++ - 为什么 Bison 仍然使用 `int yylex(void)`而找不到 `int yylex(YYSTYPE *yylval_param, YYLTYPE *yylloc_param)`?

c - C 中的作用域规则

c - C 中的文件读取(fscanf)

c - CLAPACK 中的四元数或替代 C 样式四元数库

c - 初始化一个 in_addr_t 而不进行文本解析