linux之C編程學習——getchar(),linuxc編程getchar

來源:互聯網
上載者:User

linux之C編程學習——getchar(),linuxc編程getchar

getchar

函數名: getchar

功 能: 從stdin流中讀字元

用 法: int getchar(void);

註解:

  getchar有一個int型的傳回值,當程式調用getchar時程式就等著使用者按鍵,使用者輸入的字元被存放在鍵盤緩衝區中直到使用者按斷行符號為止(斷行符號字元也放在緩衝區中)。當使用者鍵入斷行符號之後,getchar才開始從stdin流中每次讀入一個字元getchar函數的傳回值是使用者輸入的第一個字元的ASCII碼,如出錯返回-1,且將使用者輸入的字元回顯到螢幕。如使用者在按斷行符號之前輸入了不止一個字元,其他字元會保留在鍵盤緩衝區中,等待後續getchar調用讀取。也就是說,後續的getchar調用不會等待使用者按鍵,而直接讀取緩衝區中的字元,直到緩衝區中的字元讀完為後,才等待使用者按鍵。

  getch與getchar準系統相同,差別是getch直接從鍵盤擷取索引值,不等待使用者按斷行符號,只要使用者按一個鍵,getch就立刻返回, getch傳回值是使用者輸入的ASCII碼,出錯返回-1。輸入的字元不會回顯在螢幕上。getch函數常用於程式調試中,在調試時,在關鍵位置顯示有關的結果以待查看,然後用getch函數暫停程式運行,當按任意鍵後程式繼續運行。

demo:

#include <stdio.h>int main(void){  int c;  /* Note that getchar reads from stdin and    is line buffered; this means it will    not return until you press ENTER. */  while ((c = getchar()) != '\n')  printf("%c", c);  return 0;}

註:可以利用getchar()函數讓程式調試運行結束後等待編程者按下鍵盤才返回編輯介面,用法:在主函數結尾,return 0;之前加上getchar();即可。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.