c语言中用getchar()输入字符是回车算一个字符吗
展开全部
是的,c语言中用getchar()输入字符是回车算一个字符。
解析:getchar()是stdio.h中的库函数,作用是从stdin流中读入一个字符。如果stdin有数据的话不用输入它就可以直接读取了。
当程序调用getchar时,程序就等着用户按键。用户输入的字符被存放在键盘缓冲区中,直到用户按回车为止(回车字符也放在缓冲区中)。即回车是用户输入结束的标志,同时也会将回车字符也放在缓冲区中,此时getchar才开始从键盘缓冲区中读取数据,包括回车符。
扩展资料:
相近的函数getch:
getch与getchar基本功能相同,差别是getch直接从键盘获取键值,不等待用户按回车,只要用户按一个键,getch就立刻返回,getch返回值是用户输入的ASCⅡ码,出错返回-1。
输入的字符不会回显在屏幕上.getch函数常用于程序调试中,在调试时,在关键位置显示有关的结果以待查看,然后用getch函数暂停程序运行,当按任意键后程序继续运行。
参考资料来源:百度百科-getchar
展开全部
还是让我举个例子吧!
对于以下代码:
ch1=getchar();
ch2=getchar();
如果我从键盘输入一个字符,假如是'a'吧,然后按回车.
那么'a'成功赋给ch1.
但如果我又想从键盘输入另一个字符,假如是'b'吧(当然你也可以输入'a'),但此时对ch2的赋值是不成功的.理由是第一次输入时你按下的回车,编译系统会把回车看成是一个字符,自动把它赋到ch2中了!
如果你想不让刚才按下的回车自动赋到ch2中,你可以在上面两个语句之间插入语句getchar();
这个getchar()语句可以把那个回车给"吃掉".
对于以下代码:
ch1=getchar();
ch2=getchar();
如果我从键盘输入一个字符,假如是'a'吧,然后按回车.
那么'a'成功赋给ch1.
但如果我又想从键盘输入另一个字符,假如是'b'吧(当然你也可以输入'a'),但此时对ch2的赋值是不成功的.理由是第一次输入时你按下的回车,编译系统会把回车看成是一个字符,自动把它赋到ch2中了!
如果你想不让刚才按下的回车自动赋到ch2中,你可以在上面两个语句之间插入语句getchar();
这个getchar()语句可以把那个回车给"吃掉".
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
算一个字符.
例如下面程序,你输入a回车
char ch1,ch2;
printf("Enter a\n");
ch1=getchar();
printf("ch1=%c ",ch1);
ch2=getchar();
printf("ch2=%c| ",ch2);
printf("---ch2=0x%02x| ",ch2);
可以看见ch2回车的动作和它的ASCII值 0x0a
-------------
顺便说一句
用scanf() 输入时,最好加一个 \n, 这样下接 getchar(); 时不会犯错
scanf("%d...\n",&i,...);
ch = getchar();
例如下面程序,你输入a回车
char ch1,ch2;
printf("Enter a\n");
ch1=getchar();
printf("ch1=%c ",ch1);
ch2=getchar();
printf("ch2=%c| ",ch2);
printf("---ch2=0x%02x| ",ch2);
可以看见ch2回车的动作和它的ASCII值 0x0a
-------------
顺便说一句
用scanf() 输入时,最好加一个 \n, 这样下接 getchar(); 时不会犯错
scanf("%d...\n",&i,...);
ch = getchar();
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是的,所以有时候,一些刚学C库的人,会因为这个而调试不明白。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
语句:ch=getchar();的作用等同于:scanf("%c",&ch);
在输入时,空格,回车等都将作为字符读入,而且只能在用户敲入Enter键时,读入才开始执行.
在输入时,空格,回车等都将作为字符读入,而且只能在用户敲入Enter键时,读入才开始执行.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询