C语言中回车怎么打

Python026

C语言中回车怎么打,第1张

#include

<stdio.h>

#include<conio.h>

void

main()

{

while(1)

{

printf("in

the

while\

")

if(getch()=='\\r')

break

}

printf("out

of

the

while\

")

}

这个程序是只需要按一下回车就可以退出了。(用getchar函数,则需按两次)

附:

getchar和getch的区别

getchar有一个int型的返回值.当程序调用getchar时.程序就等着用户按键.用户输入的字符被存放在键盘缓冲区中.直到用户按回车为止(回车字符也放在缓冲区中).

getchar函数的返回值是用户输入的第一个字符的ascii码,如出错返回-1,且将用户输入的字符回显到屏幕.如用户在按回车之前输入了不止一个字符,其他字符会保留在键盘缓存区中,等待后续getchar调用读取.也就是说,后续的getchar调用不会等待用户按键,而直接读取缓冲区中的字符,直到缓冲区中的字符读完为后,才等待用户按键.

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

相同点都是从键盘上读入一个字符。

getch()从键盘读入一个字符且不回显。

如果要在程序中表示回车键,只要用转义字符'\n'就可以了。

例如,执行输出语句

printf("Hello!\nToday

is

Friday!\n")

后,就可以得到二行内容:

Hello!

Today

is

Friday!

你说的执行是回车符吧('\r',

0x0d),

在这里你可以无视它.

你在按下回车键时,实际读入输入缓冲区的只有一个换行符('\n',

0x0a)。

scanf("%d",&num[i])执行后,

你输入数字123,

按回车,输入缓冲区的内容是"123\n".

这时数字被scanf读入,

但是输入缓冲区里还有一个'\n'.

getchar()把'\n'取出,以免影响gets.

而gets在遇到'\n'时会停止读数据,所以如果不用getchar取出'\n',

gets遇到'\n'立即停止,只能读到一个空串,

'\0'.

这个'\0'是gets自己添加到字符串尾的,读不到数据就会有这样一个字符,这个是字符串结束标志,并非读到的字符。