如果条件在c中起作用,为什么在printf里面?

贾廷
if(printf("Hello world")){}

上面代码的输出是

Hello world

我的朋友告诉我,函数printf返回的字符长度在此处非零,因此条件为true。

但是我不明白为什么它要执行该printf语句。不应该仅在内部将printf执行{ }吗?

拔示巴

表达式中的if(表达)始终评估,你的情况这是一个呼叫printf

此表达式的值用于确定的主体(在您的情况下为空白)if是否运行。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章