C语言中while("printf("*")")是什么意思?

书上说和0一样,是什么意思

有语法错误把
多了个引号,应该是
while(printf("*"))

printf函数的返回值是所打印的字符数,这里打印*,所以while条件总为真,如果函数只有这么一个语句,那么就是不停的打印*。如果while循环里面有别的语句,可能就是反复循环执行里面的语句,并且每执行一次就打印一个*。
比如:
int i=0;
while(printf("*"))
{
print("%d",i);
i++;
if (i>4)
break;
}

这样打印出来的就是*1*2*3*4*5
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-03-09
while ( "printf(" * ")" )

首先,第一个" 与第二个" 就截断了 "printf(" 也就是获得 它的地址,再与 ")" 相乘 ,最后的结果 交给 while 判断。
第2个回答  2011-03-09
相当于一个死循环,判断字符串“printf("*")”是否为0,这是不为0的,所以条件会一直成立
第3个回答  2011-03-09
这是一个错误语句
无法通过编译的
第4个回答  2011-03-09
等于while(1)

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网