c語言中g(shù)etch,getche,getchar的區(qū)別
getchar 是stdio.h中的庫函數(shù),它的作用是從stdin流中讀入一個字符,也就是說 ,如果stdin有數(shù)據(jù)的話不用輸入就可以直接讀取了。而getch()和getche()是conio.h中的庫函數(shù),它的作用是從鍵盤接收字符。
getch() 實(shí)際是一個輸入命令,作用是從鍵盤接收一個字符,而且并不把這個字符顯示出來,就是說,你按了一個鍵后它并不在屏幕上顯示你按的什么,而繼續(xù)運(yùn)行后面的代碼,所以我們在C++中可以用它來實(shí)現(xiàn)“按任意鍵繼續(xù)”的效果,即程序中遇到getch();這行語句,它就會把程序暫停下來,等你按任意鍵,它接收了這個字符鍵后再繼續(xù)執(zhí)行后面的代碼。
你也許會問,為什么我們在C++中就沒有在程序的末尾加上getch(),解釋是,軟件總是不斷更新的,不好的地方當(dāng)然要進(jìn)行改正,getch()加在程序末尾,它又不賦值給任何變量,所以它在這個地方完全是垃圾代碼,與程序無關(guān)。C++中考慮到這一點(diǎn),于是在每次程序運(yùn)行完了并不退出,而是自動把屏幕停下來,并顯示“press any key...”叫你按任意鍵退出,這就好比C++在它的環(huán)境中運(yùn)行程序,在程序的末尾自動加上了一行g(shù)etch();語句,并且在這行語句前還添加了一行輸出語句cout<<"press any key...";來提示你程序結(jié)束了,按任意鍵繼續(xù)。
getche() 和getch()很相似,它也需要引入頭文件conio.h,那它們之間的區(qū)別又在哪里呢?不同之處就在于getch()無返回顯示,getche()有返回顯示。
上一篇:數(shù)組循環(huán)移位操作實(shí)例
欄 目:C語言
下一篇:C++拷貝構(gòu)造函數(shù)(深拷貝與淺拷貝)詳解
本文標(biāo)題:c語言中g(shù)etch,getche,getchar的區(qū)別
本文地址:http://mengdiqiu.com.cn/a1/Cyuyan/4135.html
您可能感興趣的文章
- 04-02c語言函數(shù)調(diào)用后清空內(nèi)存 c語言調(diào)用函數(shù)刪除字符
- 04-02c語言的正則匹配函數(shù) c語言正則表達(dá)式函數(shù)庫
- 04-02func函數(shù)+在C語言 func函數(shù)在c語言中
- 04-02c語言中對數(shù)函數(shù)的表達(dá)式 c語言中對數(shù)怎么表達(dá)
- 04-02c語言用函數(shù)寫分段 用c語言表示分段函數(shù)
- 04-02c語言編寫函數(shù)冒泡排序 c語言冒泡排序法函數(shù)
- 04-02c語言沒有round函數(shù) round c語言
- 04-02c語言分段函數(shù)怎么求 用c語言求分段函數(shù)
- 04-02C語言中怎么打出三角函數(shù) c語言中怎么打出三角函數(shù)的值
- 04-02c語言調(diào)用函數(shù)求fibo C語言調(diào)用函數(shù)求階乘


閱讀排行
本欄相關(guān)
- 04-02c語言函數(shù)調(diào)用后清空內(nèi)存 c語言調(diào)用
- 04-02func函數(shù)+在C語言 func函數(shù)在c語言中
- 04-02c語言的正則匹配函數(shù) c語言正則表達(dá)
- 04-02c語言用函數(shù)寫分段 用c語言表示分段
- 04-02c語言中對數(shù)函數(shù)的表達(dá)式 c語言中對
- 04-02c語言編寫函數(shù)冒泡排序 c語言冒泡排
- 04-02c語言沒有round函數(shù) round c語言
- 04-02c語言分段函數(shù)怎么求 用c語言求分段
- 04-02C語言中怎么打出三角函數(shù) c語言中怎
- 04-02c語言調(diào)用函數(shù)求fibo C語言調(diào)用函數(shù)求