gets()和getchar()還有getch()的區別


getch()和getchar()區別:
1、getch():
  所在頭文件:conio.h
  函數用途:從控制台讀取一個字符,但不顯示在屏幕上
例如:
  char ch;或int ch;
  getch();或ch=getch();
  用getch();會等待你按下任意鍵,再繼續執行下面的語句;
  用ch=getch();會等待你按下任意鍵之后,把該鍵字符所對應的ASCII碼賦給ch,再執行下面的語句。

2、getchar():
該函數聲明在stdio.h頭文件中,使用的時候要包含stdio.h頭文件。如:
  #include<stdio.h>
  int getchar(void);
getch與getchar基本功能相同,差別是getch直接從鍵盤獲取鍵值,不等待用戶按回車,只要用戶按一個鍵,getch就立刻返回, getch返回值是用戶輸入的ASCII碼,出錯返回-1.輸入的字符不會回顯在屏幕上.getch函數常用於程序調試中,在調試時,在關鍵位置顯示有關的結果以待查看,然后用getch函數暫停程序運行,當按任意鍵后程序繼續運行.

gets()和getchar()的區別:
最重要的區別是gets讀一行,getchar()讀一個字符。

先看原型:
char * gets(char * ptr);
int getchar(void);

作用是:

gets()用於從標准輸入流stdin讀入一個整行(以'\n'或EOF)結束,寫入ptr指向的字符數組,並返回這個指針;出錯或遇到文件結束時則返回NULL。行末的'\n'從流中取出,但不寫入數組。gets()不檢查被寫入的數組大小。

getchar()用於從標准輸入流stdin讀入一個字符,並返回這個字符。如果讀到文件結尾,則返回EOF。注意到EOF不能用char類型表示,所以getchar()函數返回的是一個int型的數。使用時也應該注意這一點。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM