为什么使用printf(“mystring \ n”)而不是put(“mystring”)?

时间:2015-09-02 16:23:01

标签: c printf output stdio puts

我在代码中看到了这一点,其中只使用printf显示没有任何格式的普通字符串(例如printf(“Hello World!\ n”))。 为什么不直接使用puts(“Hello World”)?

5 个答案:

答案 0 :(得分:2)

每当不必格式化/打印变量时,应使用

putsfputs。以下是一个问题:

 printf("How many %s is the interest?\n");

特别是当要打印的字符串作为变量传递时,很难找到错误。

答案 1 :(得分:1)

此外,如果您想要打印具有“%”的内容,建议您使用puts

答案 2 :(得分:0)

printf()通常是首选替代方案,因为它功能更强大,让程序员可以更好地控制输出。

答案 3 :(得分:0)

如果您希望稍后更新代码,可能会使用变量。 puts()不会格式化变量,但会printf()。此外,puts()始终会添加新行,因此如果您不想换行,那么您需要切换到printf()。基本上,printf()允许您更长时间地维护代码。

答案 4 :(得分:0)

  

为什么使用printf("mystring\n")代替puts("mystring")

注意:有的原因使用printf(),例如'%'字符的外观,但OP似乎想要 for { {1}}。

示例1:在已使用printf(line_of_text)的嵌入式应用程序(代码空间有限)中,printf()可能需要额外的程序空间。

示例2:puts()的输出附加puts()。此行为会捕获忘记此操作并使用'\n'的程序员。使用puts("mystring\n")是明确的。使用printf("mystring\n")会更好。