C語言中的putchar函數(shù)示例
putchar函數(shù)介紹:
putchar函數(shù)函數(shù)幾乎是在整個(gè)C語言中最沒有知名度的,它常常被程序員冷漠地對待。至于為什么?原因很簡單!因?yàn)樗墓δ芫椭皇菃螁屋敵鲆粋€(gè)字符。但為了讀者可以多積累函數(shù),我們還是決定講講這個(gè)函數(shù)。
搭建環(huán)境:
putchar函數(shù)的頭文件是標(biāo)準(zhǔn)輸入輸出頭文件(stdio.h),要想使用這個(gè)函數(shù)我們必須包含這個(gè)頭文件,在C語言中我們使用的是#include這個(gè)預(yù)處理來包含頭文件的。
#include<stdio.h>
因?yàn)镃語言是個(gè)函數(shù)式語言,它的程序入口是一個(gè)函數(shù)。所以包含好頭文件之后,我們需要自己手寫一個(gè)main函數(shù)這個(gè)程序的入口函數(shù),我們這個(gè)main函數(shù)的數(shù)據(jù)類型是整形(int型)。隨后函數(shù)是需要參數(shù)的,我們需要在main函數(shù)后的“()”內(nèi)編寫函數(shù)的形式參數(shù)(形參),但我們創(chuàng)建的這個(gè)函數(shù)沒有參數(shù),所以我們可以在main函數(shù)的參數(shù)內(nèi)寫上一個(gè)“void”關(guān)鍵字,表示我們這個(gè)函數(shù)不需要參數(shù),但我們也可以不在main函數(shù)里寫“void”關(guān)鍵字,它們的表達(dá)效果是一致的。我們可以使用這任意一種方法。函數(shù)要有函數(shù)體,我們之后寫一對“{}”表示函數(shù)的函數(shù)體,這樣一個(gè)函數(shù)的入口就已經(jīng)搭建完成了,這也是最基本的函數(shù)搭建。如下:
#include<stdio.h>
int main(void)
{
}另外一點(diǎn)函數(shù)是需要返回值的(除了void類型外),返回一個(gè)值由我們自己決定,這里我們默認(rèn)返回0。但在某一些編譯器,main方法的返回值是可選的。但嚴(yán)苛點(diǎn)來說我們一定要在main函數(shù)內(nèi)返回一個(gè)值,在C/C++中我們使用的是return這個(gè)語句來返回一個(gè)值。
?#include<stdio.h>
int main(void)
{
return 0;
}函數(shù)原型:
現(xiàn)在,我們就可以愉快地使用putchar函數(shù)了,我們先來看看putchar這個(gè)函數(shù)的參數(shù)原型,因?yàn)槲覀冎灰篮瘮?shù)的參數(shù)原型,才可以正確地傳入?yún)?shù),才能正確地使用函數(shù)。在VS2022中,我們可以直接將鼠標(biāo)光標(biāo)放在這個(gè)函數(shù)之上就可輕輕松松查看函數(shù)原型。

我們發(fā)現(xiàn)我們需要給putcahr函數(shù)傳入一個(gè)整形值,它會(huì)把這個(gè)整形轉(zhuǎn)換為字符型,隨后輸出到控制臺。我們還發(fā)現(xiàn)這個(gè)函數(shù)的數(shù)據(jù)類型是int_cdecl型,也就是說這個(gè)函數(shù)有一個(gè)返回值,其實(shí)這個(gè)返回值返回的是putchar參數(shù)轉(zhuǎn)換為整型的數(shù)值,我們先不管這個(gè)函數(shù)的數(shù)據(jù)類型,我們先來使用putchar函數(shù)輸出一個(gè)字符再說。
講解putchar函數(shù):
#include<stdio.h>
int main(void)
{
putchar(65);
return 0;
}我們在putchar函數(shù)內(nèi)寫入一個(gè)整形值65,putcahr函數(shù)會(huì)自動(dòng)把65這個(gè)數(shù)值轉(zhuǎn)換為數(shù)值對應(yīng)的字符并輸出。它轉(zhuǎn)換為字符的編碼形式是ASCLL編碼(ASCLL字符集),如果您對ASCLL編碼不太了解,那么請看下圖:

我們試著找到putchar參數(shù)內(nèi)的數(shù)值,并找到這個(gè)數(shù)值對應(yīng)的字符。我們不難發(fā)現(xiàn)這個(gè)字符是”A“,我們還發(fā)現(xiàn),ASCLL字符集里面包含了我們在鍵盤上所有的字符,并且每個(gè)字符都有對應(yīng)的數(shù)值,每個(gè)數(shù)值都有對應(yīng)的字符,譬如66這個(gè)數(shù)值在ASCLL碼字符集對應(yīng)的字符是“B”,67在ASCLL碼字符集對應(yīng)的字符則是“C”。
我們來看看上列程序的輸出結(jié)果:
輸出結(jié)果:A
由此證明,我們的結(jié)論是正確的,putchar函數(shù)會(huì)在控制臺上輸出這個(gè)函數(shù)對應(yīng)的字符。
但您認(rèn)為C語言中的putchar函數(shù)就這么簡單嗎?不不不!它也可以輸出參數(shù)是字符型的字符,我們來看看下面一則例子:
#include<stdio.h>
int main(void)
{
putchar('A');
return 0;
}在上文中我們也講過,putchar函數(shù)的參數(shù)原型里要求我們填寫的是一個(gè)整形,但其實(shí)字符型也是整形的一種,我們也可以在putchar的參數(shù)列表中填寫一個(gè)是字符型的參數(shù)。我們在回到代碼中來,現(xiàn)在putchar函數(shù)的參數(shù)內(nèi)有一個(gè)字符,這個(gè)字符是”A“(在C語言中,字符以單引號所包裹)。我們直接可以執(zhí)行上面的代碼輸出結(jié)果與上文中是無異的,它的輸出結(jié)果也是字符“A”。
輸出結(jié)果:A
putchar的返回值:
接下來我們是時(shí)候該講解一下putchar函數(shù)的返回值了,我們試著使用一個(gè)變量來接收一下putchar函數(shù)的返回值,并使用整形的形式輸出這個(gè)變量:
#include<stdio.h>
int main(void)
{
int sum = 0;
sum = putchar('A');
printf("%d",sum);
return 0;
}我們創(chuàng)建了一個(gè)整形變量叫“sum”,它的默認(rèn)值是0,之后使用putchar函數(shù)輸出一個(gè)字符并使用這個(gè)變量接收它的返回值。隨后使用printf函數(shù)以整形的形式輸出這個(gè)變量。我們一起看看這個(gè)程序的輸出結(jié)果:
輸出結(jié)果:A65
輸出結(jié)果的字符“A”是我們使用putchar函數(shù)輸出的,而后的65是接收putchar函數(shù)的返回值的變量所輸出的結(jié)果。我們不難看出這個(gè)sum的值是字符A的ASCLL碼值。所以putchar函數(shù)的返回值是參數(shù)的ASCLL碼值。
總結(jié):
我們學(xué)習(xí)了putchar函數(shù)的使用方法,我們知道了這個(gè)函數(shù)會(huì)把參數(shù)轉(zhuǎn)換為字符后輸出到控制臺上,并且我們還理解了putchar函數(shù)的返回值,它的返回值是將參數(shù)轉(zhuǎn)換數(shù)值,還有最重要的一點(diǎn),putchar函數(shù)的頭文件是標(biāo)準(zhǔn)輸入輸出頭文件(stdio.h),沒有了這個(gè)頭文件,我們就不可以正常使用putchar函數(shù)。
到此這篇關(guān)于C語言中的putchar函數(shù)的文章就介紹到這了,更多相關(guān)C語言putchar函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C++中CString string char* char 之間的字符轉(zhuǎn)換(多種方法)
在寫程序的時(shí)候,我們經(jīng)常遇到各種各樣的類型轉(zhuǎn)換,比如 char* CString string 之間的互相轉(zhuǎn)換,這里簡單為大家介紹一下,需要的朋友可以參考下2017-09-09
C/C++實(shí)現(xiàn)貪吃蛇逐步運(yùn)動(dòng)效果
這篇文章主要為大家詳細(xì)介紹了C/C++實(shí)現(xiàn)貪吃蛇逐步運(yùn)動(dòng)效果的相關(guān)資料,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-05-05
C++超詳細(xì)講解RTTI和cast運(yùn)算符的使用
RTTI(Runtime Type Identification)是“運(yùn)行時(shí)類型識別”的意思。C++引入這個(gè)機(jī)制是為了讓程序在運(yùn)行時(shí)能根據(jù)基類的指針或引用來獲得該指針或引用所指的對象的實(shí)際類型,cast強(qiáng)制轉(zhuǎn)換運(yùn)算符是一種特殊的運(yùn)算符,它把一種數(shù)據(jù)類型轉(zhuǎn)換為另一種數(shù)據(jù)類型2022-08-08

