【发布时间】:2018-10-08 11:52:39
【问题描述】:
这是我遇到问题的代码类型,只是一个示例:
#include <stdio.h>
#define TEN 10
int main(void)
{
int n = 0;
while (n++ < TEN)
printf("%5d", n);
printf("\n");
return 0;
}
这里,自增运算符首先在while循环中工作,n取1;然后它再次为 while 循环工作 printf() 语句,所以现在 n 得到 2 并且第一次执行 printf() 语句时打印“1”?因为否则,将打印“0”。我不确定它是否确实以这种方式工作,所以请您解释一下,就像我说的那样吗? PS:我没有老师,所以我问你们......
【问题讨论】:
-
n在比较之后增加,但在之前打印。顺便说一句,你可以在这里得到一个“老师”:coursera.org/specializations/c-programming -
尝试找一本好书,它应该能准确解释前缀和后缀
--和++运算符的工作原理。 -
#define TEN 10很傻;#define MAX 10或类似的东西会更明智。
标签: c while-loop increment