c语言 puts 和 printf的区别

puts()

只用来输出字符串,就算只有一个字母“a” ,也会当成一个字符串。

因为字符串的最后一项默认为 “” (字符串终止符的标志),

而puts()遇到 会输出

也就是说,puts(s) 和 printf("%s ",s) 的输出格式是一样的。

 printf()

的输出格式很多,可以根据不同的需要,加转义字符,达到格式化输出。

puts()的参数可以直接是字符串,如puts("abcd");

也可以是变量名, 如 a = “abcd”; puts(a);有换行。

printf()的参数也可以直接是字符串,如printf("abcd");

要实现换行必须printf("%s ",a);

上面说到 ,puts()遇到 会输出 , 那么直接 puts("")是不是输出换行呢?

答案是肯定的!!!

那么 ,puts("")是输出两个换行吗??

经过测试,并不是这样!!!

想要输出两个换行,是puts(" ")!!

原因: 是字符串结束的标志,之后的字符也都不读取!!

puts(" "); 先读取 再读取 ; 而puts(""); 读取 之后 ,下一个 就不再读取了,所以只有一个换行。

经验分享 程序员 微信小程序 职场和发展