<pre id="bbfd9"><del id="bbfd9"><dfn id="bbfd9"></dfn></del></pre>

          <ruby id="bbfd9"></ruby><p id="bbfd9"><mark id="bbfd9"></mark></p>

          <p id="bbfd9"></p>

          <p id="bbfd9"><cite id="bbfd9"></cite></p>

            <th id="bbfd9"><form id="bbfd9"><dl id="bbfd9"></dl></form></th>

            <p id="bbfd9"><cite id="bbfd9"></cite></p><p id="bbfd9"></p>
            <p id="bbfd9"><cite id="bbfd9"><progress id="bbfd9"></progress></cite></p>
            C語言

            C語言的字符串輸出puts()函數

            時間:2025-06-03 00:11:14 C語言 我要投稿
            • 相關推薦

            C語言的字符串輸出puts()函數

              puts()函數很容易用,只需把字符串地址作作為參數傳遞給它就可以了。下面我們一起來學習一下吧!

              puts()函數有兩個特點:

              puts()在顯示字符串時會自動在其末尾添加一個換行符。 puts()遇到空字符時就停止輸出,所以必須確保有空字符。

              下面兩個示例分別說明puts()的兩個特點。

              示例1:

            1
            2
            3
            4
            5
            6
            7
            8
            9
            10
            11
            12
            13
            14
            15
            16
            17
            /* put_out.c -- using puts() */
            #include <stdio.h>
            #define DEF "I am a #defined string."
            int main(void)
            {
                char str1[80] = "An array was initialized to me.";
                const char * str2 = "A pointer was initialized to me.";
             
                puts("I'm an argument to puts().");
                puts(DEF);
                puts(str1);
                puts(str2);
                puts(&str1[5]);
                puts(str2+4);
             
                return 0;
            }</stdio.h>

              該程序的輸出如下:

            1
            2
            3
            4
            5
            6
            I'm an argument to puts().
            I am a #defined string.
            An array was initialized to me.
            A pointer was initialized to me.
            ray was initialized to me.
            inter was initialized to me.

              如上所示,每個字符串獨占一行,因為puts()在顯示字符串時會自動在其末尾添加一個換行符。

              示例2:

            1
            2
            3
            4
            5
            6
            7
            8
            9
            10
            11
            12
            /* nono.c -- no! */
            #include <stdio.h>
            int main(void)
            {
                char side_a[] = "Side A";
                char dont[] = {'W', 'O', 'W', '!' };
                char side_b[] = "Side B";
             
                puts(dont);   /* dont is not a string */
             
                return 0;
            }</stdio.h>

              下面是該程序的一個示例,可能每次運行結果都不一樣,不同的編譯器輸出的內容有可能不同:

            1
            WOW!Side A

              puts()如何知道在何處停止?該函數遇到空字符時就停止輸出。由于dont缺少一個表示結束的空字符,所以它不是一個字符串,因此puts()不知道何處停止。它會一直打印dont后面內存中的內容,直到發現一個空字符為止。為了讓puts()能盡快讀到空字符,我們把dont放在side_a和side_b之間,上面是該程序的一個運行示例,不同的編譯器輸出的內容有可能不同

              通常內存中有許多空字符,如果幸運的話,puts()很快就會發現一個。但是這樣做是不靠譜的!


            【C語言的字符串輸出puts()函數】相關文章:

            C語言字符串的輸入輸出07-03

            C語言字符串處理函數03-01

            C語言之字符串處理函數03-12

            C語言的字符串處理函數strlen()04-27

            C語言字符串操作函數及常用的實現03-16

            C語言的字符串反轉輸出是什么樣06-26

            C語言字符串處理的庫函數有哪些06-24

            C語言字符串操作函數和常用的實現03-20

            C語言中返回字符串函數的實現方法03-22

                    <pre id="bbfd9"><del id="bbfd9"><dfn id="bbfd9"></dfn></del></pre>

                    <ruby id="bbfd9"></ruby><p id="bbfd9"><mark id="bbfd9"></mark></p>

                    <p id="bbfd9"></p>

                    <p id="bbfd9"><cite id="bbfd9"></cite></p>

                      <th id="bbfd9"><form id="bbfd9"><dl id="bbfd9"></dl></form></th>

                      <p id="bbfd9"><cite id="bbfd9"></cite></p><p id="bbfd9"></p>
                      <p id="bbfd9"><cite id="bbfd9"><progress id="bbfd9"></progress></cite></p>
                      飘沙影院