t=0;
while (printf("*"))
{t++;if(t<3) break;}
为什么循环控制表达式与'0'(不是0)等价呢?
t=0;
while (printf("*"))
{t++;if(t<3) break;}
为什么循环控制表达式与'0'(不是0)等价呢?
while后为一个表达式(expression),当此表达式为True(或非0)时,循环继续,当此表达式为False(或0)时,循环结束。
printf("*")和'0'的结果都不是0,故等价。
t++之后,t变成1,小于3,所以跳出循环了