首頁  >  文章  >  後端開發  >  C語言字串輸出函數puts()的作用是什麼

C語言字串輸出函數puts()的作用是什麼

coldplay.xixi
coldplay.xixi原創
2020-12-21 10:55:335165瀏覽

C語言字串輸出函數puts()的作用:1、【puts()】在顯示字串時會自動在其末尾添加一個換行符;2、【puts()】遇到空字符時就停止輸出,所以必須確保有空字符。

C語言字串輸出函數puts()的作用是什麼

【相關學習推薦:C語言教學影片

#C語言字串輸出函數puts()的作用:

  • puts()在顯示字串時會自動在其末尾添加一個換行符。 

  • puts()遇到空白字元時就停止輸出,所以必須確保有空字元。  

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

範例1:

/* 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&#39;m an argument to puts().");
    puts(DEF);
    puts(str1);
    puts(str2);
    puts(&str1[5]);
    puts(str2+4);
 
    return 0;
}</stdio.h>

  該程式的輸出如下:

I&#39;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:

/* nono.c -- no! */
#include <stdio.h>
int main(void)
{
    char side_a[] = "Side A";
    char dont[] = {&#39;W&#39;, &#39;O&#39;, &#39;W&#39;, &#39;!&#39; };
    char side_b[] = "Side B";
 
    puts(dont);   /* dont is not a string */
 
    return 0;
}</stdio.h>

  以下是程式的範例,可能每次執行結果都不一樣,不同的.編譯器輸出的內容有可能不同:

WOW!Side A

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

以上是C語言字串輸出函數puts()的作用是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn