首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

再次请问getchar和getch有关问题:)

2012-02-16 
再次请教getchar和getch问题:)在键盘仅仅输入“enter键”,然后查看返回的数值:代码段1返回是:10代码段2返回

再次请教getchar和getch问题:)
在键盘仅仅输入“enter键”,
然后查看返回的数值:
代码段1返回是:10
代码段2返回是:13
很奇怪,明明都是扑获的“enter”,怎么两个函数返回值不同呢?
谢谢!

PS:附上两段代码

代码段1:
int   value1   =   getchar();
printf(   "value1   is   %d\n ",value1);


代码段2:
int   value2   =   getchar();
printf(   "value2   is   %d\n ",value2);



[解决办法]
我的都是10啊 VC6
[解决办法]
getchar()函数等待输入直到按回车才结束, 回车前的所有输入字符都会逐个显示在屏幕上。但只有第一个字符作为函数的返回值。
getch()函数不将读入的字符回显在显示屏幕上
[解决办法]
确实getchar()返回10而getch()返回13 奇怪
[解决办法]
我的也是10和13
[解决办法]
linn@pirate:~/ccode$ ./getch

value1 is 10

value2 is 10

//******************

both value are 10 (under Ubuntu 6.06)
[解决办法]
我的解释是,一个是换行符 一个是回车,回车是13 换行符是10,
你可以这么试下 printf( "%c\n ",10); 结果可以证明10是换行符

热点排行