puts()和gets()函數 用法 ()


1.1.2非格式化輸入輸出函數

    非格式化輸入輸出函數可以由上面講述的標准格式化輸入輸出函數代替, 但

這些函數編譯后代碼少, 相對占用內存也小, 從而提高了速度, 同時使用也比較

方便。下面分別進行介紹

    一、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);

     


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM