cCharTemp=getchar();主要是接受scanf("%c",cCharPut);這里按的回車,執(zhí)行程序時(shí),你輸入a,然后回車,實(shí)際上緩沖區(qū)接受的是兩個(gè)字符,第一個(gè)是'a'第二個(gè)是‘\n',scanf("%c",cCharPut);只把a(bǔ)從緩沖區(qū)中取走,但是'\n'還在緩沖區(qū)。如果沒(méi)有g(shù)etchar這個(gè)語(yǔ)句,那么下面的語(yǔ)句scanf("%c",cCharPut);就會(huì)直接讀取緩沖區(qū)中的'\n‘而不會(huì)等到你再去輸入字符。而getchar是取走緩沖區(qū)中一個(gè)字符,把回車給取走,緩沖區(qū)空了,你才能再次輸入

從網(wǎng)站建設(shè)到定制行業(yè)解決方案,為提供成都網(wǎng)站建設(shè)、做網(wǎng)站服務(wù)體系,各種行業(yè)企業(yè)客戶提供網(wǎng)站建設(shè)解決方案,助力業(yè)務(wù)快速發(fā)展。成都創(chuàng)新互聯(lián)公司將不斷加快創(chuàng)新步伐,提供優(yōu)質(zhì)的建站服務(wù)。
用如下方式接收回車
#includestdio.h
#include conio.h
void main()
{
char ch;
ch=getch();
if(ch==13)
printf("回車 ASC碼為:%d\n",ch);
else
printf("字符 %c ASC碼為: %d\n",ch,ch);
}
1、在不同平臺(tái),輸入回車,getch()將返回不同數(shù)值,而getchar()統(tǒng)一返回10(即\n)
1)windows平臺(tái)下ENTER鍵會(huì)產(chǎn)生兩個(gè)轉(zhuǎn)義字符
\r\n,因此getch返回13(\r)。
2)unix、
linux系統(tǒng)中ENTER鍵只產(chǎn)生
\n
,因此getch返回10(\n)。
3)MAC
OS中ENTER鍵將產(chǎn)生
\r
,因此getch返回13(\r)。
2、getch()是一個(gè)函數(shù),這個(gè)函數(shù)的作用是讀取按鍵的值。一般放在程序末尾是為了起到暫停的作用。有點(diǎn)象批處理的pause命令,例如
printf("Pass
any
key
to
return...");
getch();
getch()函數(shù)在輸入時(shí)不可見(jiàn)、一次只能輸入一個(gè)字符、用此函數(shù)時(shí)必須寫(xiě)上#include
stdio.h或#include
"stdio.h"
scanf函數(shù)族在用%c接受輸入時(shí)要接收空格和回車。%s時(shí)接受空格。
getchar函數(shù)族接受所有字符包括回車。
當(dāng)前文章:c語(yǔ)言接受回車的函數(shù),c語(yǔ)言輸入回車的作用
標(biāo)題鏈接:http://chinadenli.net/article16/heojdg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、域名注冊(cè)、手機(jī)網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)公司、網(wǎng)站建設(shè)、自適應(yīng)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容