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(" "); 读取 之后 ,下一个 就不再读取了,所以只有一个换行。