溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

C語言字符串輸出函數(shù)puts()的作用有哪些

發(fā)布時間:2020-12-22 10:02:54 來源:億速云 閱讀:431 作者:小新 欄目:編程語言

這篇文章主要介紹C語言字符串輸出函數(shù)puts()的作用有哪些,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!

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

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

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

  • puts()遇到空字符時就停止輸出,所以必須確保有空字符?! ?/p>

下面兩個示例分別說明puts()的兩個特點?! ?/p>

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

  該程序的輸出如下:

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()在顯示字符串時會自動在其末尾添加一個換行符?! ?/p>

示例2:

/* 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>

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

WOW!Side A

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

以上是“C語言字符串輸出函數(shù)puts()的作用有哪些”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI