c语言教程_gets()/puts()函数语法 用法 例子

    作者:Comet更新于: 2015-08-14 11:29:57

    大神带你学编程,欢迎选课

    下面小编为大家该例子说明C语言教程的几个问题: 非格式化输出函数puts()和非格式化输入函数gets().

     

    c语言教程_gets()/puts()函数语法 用法 例子

     


    1. puts()函数


    原型:int puts(char *string);
    功能:puts()函数用来向标准输出设备(屏幕)写字符串并换行。
    调用格式:puts(p); 其中p 是指向字符串的指针(字符串数组名或字符串指针)
    注意:puts()函数的作用与语句 printf("%s\n",s); 的作用相同。
    说明:
    (1) puts()函数只能输出字符串, 不能输出数值或进行格式变换。
    可以将字符串直接写入puts()函数中。如: puts("Hello world");
    (2) puts() 输出的每一个串都在新行符处换行。最后, 当 puts() 找到空字符时, 它将空字符换成一个新行符并且输出。


    2. gets()函数


    原型:char *gets(char *string);
    功能:gets()函数用来从标准输入设备(键盘)读取字符串直到回车结束, 但回车符不属于这个字符串。
    调用格式:gets(p); 其中p 是指向字符串的指针(字符串数组名或字符串指针)。
    注意:gets(s)函数与scanf("%s", &s)相似, 但不完全相同。
    使用scanf("%s", &s)函数输入字符串时存在一个问题, 就是如果输入了空格会认为输入字符串结束,
    空格后的字符将作为下一个输入项处理, 但gets() 函数将接收输入的整个字符串直到回车为止。

     

    测试环境vc6.0
    ********************************************************************/
     
     
    ********************************************************************/
    I'm an argument to puts().
    An array example.
    A pointer example.
    rray example.
    inter example.
    Press any key to continue
    ********************************************************************/

     

     
    /********************************************************************
    这个例子提醒我们括号中的字符串和字符数组名是指针。

     
    注意最后两行:
    指针 &str1[4] 指向的是 str1 数组的第五个元素, 这个元素存放字符 'r', 这就是 puts() 作为它的指针起始点的地方。

     
    相似的, str2+4 指向 str2 中存放 'i' 的内存单元, 并且打印输出从这里开始。

     
    puts 怎么知道何时停止于何处呢? 这个函数是在空字符 \0 出现时停止的, 因此, 最好字符串中已有一个这样的字符。
    例如
    int main()
    {
      static char arry[] = {'H','I','!','!'};
      puts(arry);

     
      return 0;
    }
    则输出 Hi!!烫烫烫烫烫烫烫烫烫烫烫烫dhaklhdwuhdaghdagdak... (后面都是乱码)
    原因:a在结尾处缺少一个空字符('\0'), 所以它不是一个串,这样 puts() 就不知道
    什么时候停止输出, 它将会把a 后面内存单元中的内容都打印出, 直到它在什么地方碰到
    了一个空字符为止。
     
    以上就是c语言教程的gets()/puts()函数语法和用法内容,了解更多c语言视频教程知识可进入课课家教育网络教学平台进行查询观看!
C语言 更多推荐

课课家教育

未登录