C语言-getch() 和 getchar() 有什么区别

如题所述

getchar有一个int型的返回值.当程序调用getchar时.程序就等着用户按键.用户输入的字符被存放在键盘缓冲区中.直到用户按回车为止(回车字符也放在缓冲区中).getchar函数的返回值是用户输入的第一个字符的ASCII码,如出错返回-1,且将用户输入的字符回显到屏幕.如用户在按回车之前输入了不止一个字符,其他字符会保留在键盘缓存区中,等待后续getchar调用读取.也就是说,后续的getchar调用不会等待用户按键,而直接读取缓冲区中的字符,直到缓冲区中的字符读完为后,才等待用户按键.
getch与getchar基本功能相同,差别是getch直接从键盘获取键值,不等待用户按回车,只要用户按一个键,getch就立刻返回,getch返回值是用户输入的ASCII码,出错返回-1.输入的字符不会回显在屏幕上.getch函数常用于程序调试中,在调试时,在关键位置显示有关的结果以待查看,然后用getch函数暂停程序运行,当按任意键后程序继续运行.

简单的说,getch()是读取按键值常放在程序末尾起暂停作用而getchar()是从标准输入设备读取下一个字符~~所读字符若文件结束或出错则返回-1追问

getchar 可以输入单词,还是只能输入单个字符?

追答

getchar()只读取一个字符,
读取单词也就是字符串可以用fgets() 不建议用gets()----太危险

追问

getch 呢,也是读取一个字符,对吧

追答

温馨提示:内容为网友见解,仅供参考
第1个回答  2015-02-06
前者输入一个返回一个,后者直到输入回车后才把输入逐个返回。追问

getchar 输入即putchar 输出,都必须是单个字符,不能是字符串嘛?

追答

getchar每次返回的是

getchar每次返回的是一个字符,如果要输入字符串,可以使用gets,相应的输出为puts

第2个回答  2015-02-06
getch()这个函数是一个不回显函数,当用户按下某个字符时,函数自动读取,无需按回车,有的C语言命令行程序会用到此函数做游戏,但是这个函数并非标准函数,要注意移植性!
getchar()是输入一个字符的标准函数,需要你按回车。

C语言-getch() 和 getchar() 有什么区别
getch与getchar基本功能相同,差别是getch直接从键盘获取键值,不等待用户按回车,只要用户按一个键,getch就立刻返回,getch返回值是用户输入的ASCII码,出错返回-1.输入的字符不会回显在屏幕上.getch函数常用于程序调试中,在调试时,在关键位置显示有关的结果以待查看,然后用getch函数暂停程序运行,当按任意键后...

getch()和getchar()有什么区别
getch与getchar基本功能相同,差别是getch直接从键盘获取键值,不等待用户按回车,只要用户按一个键,getch就立刻返回, getch返回值是用户输入的ASCII码,出错返回-1.输入的字符不会回显在屏幕上.getch函数常用于程序调试中,在调试时,在关键位置显示有关的结果以待查看,然后用getch函数暂停程序运行,当按任意键...

求解C语言中getchar和getch有什么区别?
差别是getch直接从键盘获取键值,不等待用户按回车,只要用户按一个键,getch就立刻返回, getch返回值是用户输入的ASCII码,出错返回-1.输入的字符不会回显在屏幕上,

c语言中的getch与getchar 有什么区别?
c语言中的getch与getchar函数主要用于从控制台读取输入字符。它们的主要区别在于读取字符时的处理方式和操作流程。getchar函数首先从标准输入流(stdin)读取一个字符,然后返回该字符的值。在这个过程中,它会读取到一个完整的字符(包括任何前导空格或换行符),并将其放入输入缓冲区。getchar函数在读取字...

getch和getchar的区别
回显不同、头文件不同。1、getchar函数会将用户输入的字符回显到屏幕上,即在用户输入字符后,该字符会显示在屏幕上。而getch函数不会将用户输入的字符回显到屏幕上,即用户输入的字符不会在屏幕上显示出来。2、getchar函数位于标准输入输出库中,因此在使用getchar函数之前需要包含该头文件。而getch函数...

getch与getchar的区别
1、获取键值不同:getch直接从键盘获取键值,不等待用户按回车,只要用户按一个键,getch就立刻返回。2、返回值不同:getchar有一个int型的返回值。当程序调用getchar时,程序就等着用户按键,用户输入的字符被存放在键盘缓冲区(输入缓冲区)中,直到用户按回车为止(回车字符也放在缓冲区中),getchar函数...

getch和getchar的区别
1、功能区别:getch是C语言中的一个函数,用于从键盘获取一个字符。getchar也是C语言中的一个函数,主要用于从标准输入读取下一个字符,将其作为结果返回。2、返回值区别:getch函数返回所读取到的字符本身(以int类型表示),没有进行转换或处理。getchar函数有两种可能性:成功地从标准输入中读取到下一...

c getcha()和getchar()有什么区别??
getch 是在<conio.h>里面调用的,不经过缓冲区,不需要回车,不回到屏幕上。getchar是在<stdio.h>里面调用的,经过缓冲区,需要按回车,回到屏幕上。

C语言中,getch(),getche(),getchar()这三个函数的区别及用处。
getch和getche都是读入单个字符的,不同的是getch不会将读书的输出来,而getche就会再把它输出到屏幕上。比如你用getch读入,按了键以后屏幕上没有输出,但是实际上已经读入了。而getche会把你刚按的再输出来。getchar则是读入字符串的。

getchar()与getch()有什么区别
简单来说,getchar()是一个整型的用于接收输入的字符的函数,而getch(),在tc中或win-tc中较常见,放在程序的末尾,起到暂停作用,就是把数据显示在屏幕上,如果不加getch(),屏幕一闪而过

相似回答