puts()和gets()函数

Posted JhonnyK

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了puts()和gets()函数相关的知识,希望对你有一定的参考价值。

puts()和gets()函数

    1. puts()函数

    puts()函数用来向标准输出设备(屏幕)写字符串并换行, 其调用格式为:

     puts(s);

    其中s为字符串变量(字符串数组名或字符串指针)。

    puts()函数的作用与语printf("%s\n", s)相同。

    例4:

     main()

     {

          char s[20], *f;                 /*定义字符串数组和指针变量*/

          strcpy(s, "Hello! Turbo C2.0"); /*字符串数组变量赋值*/

          f="Thank you";                  /*字符串指针变量赋值*/

          puts(s);

          puts(f);

     }

 

    说明:

    (1). puts()函数只能输出字符串, 不能输出数值或进行格式变换。

    (2). 可以将字符串直接写入puts()函数中。如:

          puts("Hello, Turbo C2.0");

 

    2. gets()函数

    gets()函数用来从标准输入设备(键盘)读取字符串直到回车结束, 但回车符

不属于这个字符串。其调用格式为:

    gets(s);

    其中s为字符串变量(字符串数组名或字符串指针)。

    gets(s)函数与scanf("%s", &s)相似, 但不完全相同, 使用scanf("%s", &s)

函数输入字符串时存在一个问题, 就是如果输入了空格会认为输入字符串结束,

空格后的字符将作为下一个输入项处理, 但gets() 函数将接收输入的整个字符

串直到回车为止。

    例5

     main()

     {

          char s[20], *f;

          printf("What‘s your name?\n");

          gets(s);                      /*等待输入字符串直到回车结束*/

          puts(s);                      /*将输入的字符串输出*/

          puts("How old are you?");

          gets(f);

          puts(f);

以上是关于puts()和gets()函数的主要内容,如果未能解决你的问题,请参考以下文章

我可以在不同的函数中使用相同字符串的gets()和puts()吗

scanf 与 gets ,printf 与puts 函数比较

gets()puts()函数。字符串函数。字符串排序的例子。

gets()puts()函数。字符串函数。字符串排序的例子。

Linux下使用gets和puts方法出现的错误

输出与输出:putchar() getchar() printf() scanf() puts() gets() sscanf()