首頁  >  文章  >  後端開發  >  putchar()的功能是啥

putchar()的功能是啥

青灯夜游
青灯夜游原創
2023-01-11 14:44:2118208瀏覽

putchar()的功能是輸出一個字元到終端。 putchar()是一個輸出函數,語法“putchar(char)”,可以把參數char指定的字元(一個無符號字元)寫入到標準輸出stdout中。 putchar()函數的輸出可以是一個字符,可以是介於0~127之間的一個十進制整數數(包含0和127),也可以是用char定義好的一個字符型變數。

putchar()的功能是啥

本教學操作環境:windows7系統、c99版本、Dell G3電腦。

putchar()是c語言中的一個函數,功能是向終端輸出一個字元。

putchar()函數包含在C 標準函式庫 中。其輸出可以是一個字符,可以是介於0~127之間的一個十進制整數數(包含0和127),也可以是用char定義好的一個字符型變數。

語法結構為:

int putchar(int char)

可以把參數char指定的字元(一個無符號字元)寫入到標準輸出stdout。

參數:

  • char -- 這是要寫入的字元。該字元以其對應的 int 值進行傳遞。

傳回值

  • 該函數以無符號char 強制轉換為int 的形式傳回寫入的字符,如果發生錯誤則回傳EOF。

說明

  • 該函數將指定的表達式的值所對應的字元輸出到標準輸出終端上。表達式可以是字元型或整數型,它每次只能輸出一個字元。例如:“putchar('#')”輸出字元“#”。

putchar()函數使用

putchar()函數就只能輸出char型的資料麼?帶著這樣的疑問,在環境上進行了驗證,驗證結果還蠻有意思,分享一下。

當我們定義一個變數a,並給予a0~255的值,很顯然沒有問題,如程式碼:

#include<stdio.h>void main( )
{     int a = 0;  //将0值赋给变量a
     int b = 255;  //将255值赋给变量b
     putchar(a) ; //输出变量a的值
     putchar(b) ; //输出变量b的值
     putchar(&#39;\n&#39;) ;
}

結果顯然沒有問題。

但如果現在賦值為負數呢?如程式碼:

#include<stdio.h>void main( )
{     int a = -4646;  //将-4646值赋给变量a
     int b = -2;  //将-2值赋给变量b
     putchar(a) ; //输出变量a的值
     putchar(&#39;\n&#39;) ;     putchar(b) ; //输出变量b的值
     putchar(&#39;\n&#39;) ;
}

發現編譯正常,也能輸出結果,只是輸出的結果都是空,我也不太清楚是什麼原因?

還有一種情況是,賦的值大於255時,會怎麼樣?程式碼如下:

#include<stdio.h>void main( )
{     int a = 592;  //将592值赋给变量a
     int b = 267;  //将267值赋给变量b
     putchar(a) ; //输出变量a的值
     putchar(&#39;\n&#39;) ;     putchar(b) ; //输出变量b的值
     putchar(&#39;\n&#39;) ;
}

運行結果為: 

putchar()的功能是啥

#從結果可以發現,賦的值被截斷成char型資料了,也就是說只取了低八位的數據。

從這些範例來說,putchar()這個函數不會檢查要輸出的字元的真正範圍。

結論: 

在使用的時候需要注意,輸出變數的範圍是不是一個字元的範圍內,只有在一個字元的範圍內才能正確輸出,不然一定會出錯。

推薦:《c語言教學

以上是putchar()的功能是啥的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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