前面在输出字符串时都使用printf,通过“%s”输出字符串。其实还有更简单的方法,就是使用 puts() 函数。该函数的原型为:
# include <stdio.h>
int puts(const char *s);
这个函数也很简单,只有一个参数。s可以是字符指针变量名、字符数组名,或者直接是一个字符串常量。功能是将字符串输出到屏幕。输出时只有遇到 '/0' 也就是字符串结束标志符才会停止。
下面写一个程序:
# include <stdio.h> int main(void) { char name[] = "祖国!"; printf("%s/n", name); //用printf输出 puts(name); //用puts()输出 puts("我爱你!"); //直接输出字符串 return 0; }
输出结果是:
祖国!祖国!我爱你!
可见使用 puts() 输出更简洁、更方便。而且使用 puts() 函数连换行符 '/n' 都省了,使用 puts() 显示字符串时,系统会自动在其后添加一个换行符,也就是说:
printf("%s/n", name);
和:
puts(name);
是等价的。所以前面字符指针变量中:
printf("%s/n", string);
也可以直接写成:
puts(string);
我们写一个程序来验证一下:
# include <stdio.h> int main(void) { char *string = "I Love You China!"; puts(string); return 0; }
输出结果是:
I Love You China!
但是 puts() 和 printf() 相比也有一个小小的缺陷,就是如果 puts() 后面的参数是字符指针变量或字符数组,那么括号中除了字符指针变量名或字符数组名之外什么都不能写。比如 printf() 可以这样写:
printf("输出结果是:%s/n", str);
而 puts() 就不能使用如下写法:
puts(输出结果是:str);
因此,puts() 虽然简单、方便,但也仅限于输出字符串,功能还是没有 printf() 强大。
原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/21538.html