putchar()的功能是輸出一個字元到終端。 putchar()是一個輸出函數,語法“putchar(char)”,可以把參數char指定的字元(一個無符號字元)寫入到標準輸出stdout中。 putchar()函數的輸出可以是一個字符,可以是介於0~127之間的一個十進制整數數(包含0和127),也可以是用char定義好的一個字符型變數。
本教學操作環境:windows7系統、c99版本、Dell G3電腦。
putchar()是c語言中的一個函數,功能是向終端輸出一個字元。
putchar()函數包含在C 標準函式庫
語法結構為:
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('\n') ; }
結果顯然沒有問題。
但如果現在賦值為負數呢?如程式碼:
#include<stdio.h>void main( ) { int a = -4646; //将-4646值赋给变量a int b = -2; //将-2值赋给变量b putchar(a) ; //输出变量a的值 putchar('\n') ; putchar(b) ; //输出变量b的值 putchar('\n') ; }
發現編譯正常,也能輸出結果,只是輸出的結果都是空,我也不太清楚是什麼原因?
還有一種情況是,賦的值大於255時,會怎麼樣?程式碼如下:
#include<stdio.h>void main( ) { int a = 592; //将592值赋给变量a int b = 267; //将267值赋给变量b putchar(a) ; //输出变量a的值 putchar('\n') ; putchar(b) ; //输出变量b的值 putchar('\n') ; }
運行結果為:
#從結果可以發現,賦的值被截斷成char型資料了,也就是說只取了低八位的數據。
從這些範例來說,putchar()這個函數不會檢查要輸出的字元的真正範圍。
結論:
在使用的時候需要注意,輸出變數的範圍是不是一個字元的範圍內,只有在一個字元的範圍內才能正確輸出,不然一定會出錯。
推薦:《c語言教學》
以上是putchar()的功能是啥的詳細內容。更多資訊請關注PHP中文網其他相關文章!