因此printf()是一个函数,如果发生错误,它将返回写入的字符数(如果成功或负值),查看此示例,输出如预期的那样为零。为什么printf()在它应该是0时给出随机输出?
#include <stdio.h>
int main(void)
{
printf("%d");
return 0;
}
现在,当我添加一些更多的这些%d的:http://ideone.com/brw5vG 输出更改为: 0 134513819 -1216430092 134513808
我无法弄清楚怎么了随机垃圾值?在输出中也有一个负值,并且负值证明了错误,所以任何人都可以精确地指出这里的错误吗? 请简明扼要。谢谢。
你从来没有真正检查过'printf'的返回值。 – 2014-01-14 19:30:22
'printf'的返回值与它应该写入stdout的内容有很大的区别。两件完全不同的事情。 –
@remyabel:这不是问题。 –