gets() 和 getchar() 还有 getch() 的区别

推荐连接:http://www.javashuo.com/article/p-fumadqmc-dm.html

一、getchar()函数getch()函数区别?

  getchar();从键盘读取一个字符并输出,该函数的返回值是输入第一个字符的ASCII码;若用户输入的是一连串字符,函数直到用户输入回车时结束,输入的字符连同回车一块儿存入键盘缓冲区。若程序中有后继的getchar();函数,则直接从缓冲区逐个读取已输入的字符并输出,直到缓冲区为空时才从新读取用户的键盘输入。
  getch();接受一个任意键的输入,不用按回车就返回。该函数的返回值是所输入字符的ASCII码,且该函数的输入不会自动显示在屏幕上,须要putchar();函数输出显示。getch();函数经常使用于中途暂停程序方便调试和查看。
  getchar();和getch();的另外一个区别就是所须要包含的头文件不一样。
  getchar();用 #include<stdio.h>
  getch(); 用 #include<conio.h>
html

二、getchar()函数gets()函数区别?

最重要的区别是gets读一行,getchar()读一个字符。

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

做用是:

gets()用于从标准输入流stdin读入一个整行(以'\n'或EOF)结束,写入ptr指向的字符数组,并返回这个指针;出错或遇到文件结束时则返回NULL。行末的'\n'从流中取出,但不写入数组。gets()不检查被写入的数组大小。

getchar()用于从标准输入流stdin读入一个字符,并返回这个字符。若是读到文件结尾,则返回EOF。注意到EOF不能用char类型表示,因此getchar()函数返回的是一个int型的数。使用时也应该注意这一点。
数组

相关文章
相关标签/搜索