zoukankan      html  css  js  c++  java
  • 【字符串】puts函数详解

    前面在输出字符串时都使用printf,通过“%s”输出字符串。其实还有更简单的方法,就是使用 puts() 函数。该函数的原型为:

    1 #include <stdio.h>
    2 int put(const char *s);

    这个函数也很简单,只有一个参数。s可以是字符指针变量名、字符数组名,或者直接是一个字符串常量。功能是将字符串输出到屏幕。输出时只有遇到 '' 也就是字符串结束标志符才会停止。

    下面写一个程序:

     
    1 #include <stdio.h>
    2 int main(void)
    3 {
    4     char name[]="祖国!";
    5     printf("%s
    ",name);//用printf输出
    6     puts(name);//用puts()输出
    7     puts("我爱你!");//直接输出字符串
    8     return 0;
    9 }

    可见使用 puts() 输出更简洁、更方便。而且使用 puts() 函数连换行符 ' ' 都省了,使用 puts() 显示字符串时,系统会自动在其后添加一个换行符,也就是说:printf("%s ",name);和puts(name);是等价的。所以前面字符指针变量中:printf("%s/n",string);也可以直接写成:puts(string);

    我们写一个程序来验证一下:

    1 #include <stdio.h>
    2 int main(void)
    3 {
    4     char *string="I Love You China!";
    5     puts(string);
    6     return 0;
    7 }

    但是 puts() 和 printf() 相比也有一个小小的缺陷,就是如果 puts() 后面的参数是字符指针变量或字符数组,那么括号中除了字符指针变量名或字符数组名之外什么都不能写。比如 printf() 可以这样写:

    1 printf("输出结果是:%s
    ", str);

    而 puts() 就不能使用如下写法:

    1 puts(输出结果是:str);
    因此,puts() 虽然简单、方便,但也仅限于输出字符串,功能还是没有 printf() 强大。
     
     
  • 相关阅读:
    CentOS6.8下安装Docker
    xshell连接Linux(centos6.8)失败的解决方法
    Windows Server定时执行bat
    [译]看漫画学Flux
    LeetCode题型分类及索引
    LeetCode & Q38-Count and Say-Easy
    LeetCode & Q20-Valid Parentheses-Easy
    LeetCode & Q14-Longest Common Prefix-Easy
    LeetCode & Q13-Roman to Integer-Easy
    LeetCode & Q28-Implement strStr-Easy
  • 原文地址:https://www.cnblogs.com/Luthais/p/10212964.html
Copyright © 2011-2022 走看看