CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

奇怪的getch()??奇怪的VC??

楼主yiyuan(一元)2001-10-21 23:25:30 在 VC/MFC / 基础类 提问

getch()在VC下使用是不是有问题??  
   
  比如下面这个再简单不过的程序:  
   
  控制台程序:  
   
  #include<conio.h>  
  #include<stdio.h>  
   
  void   main()  
  {  
  int   a;  
  puts("press   a   key   ");  
  getch();  
  printf("insert   something:   ");  
  scanf("%d",&a);  
  }  
   
  屏幕上,在等待scanf时,在insert   something:   的后面,一定会出现刚才getch()进去的那个字符。虽然我可以退格去掉它,但实在不完美。  
   
  这是键盘缓冲区没有清净???好像不是。我把所有的方法都用了也不行。比如像下面这样:  
   
  #include<conio.h>  
  #include<stdio.h>  
   
  void   main()  
  {  
  int   a;  
  puts("press   a   key   ");  
  getch();  
  fflush(stdin);  
  printf("insert   something:   ");  
  while(kbhit())  
  getch();  
  fflush(stdin);  
  scanf("%d",&a);  
  while(kbhit())  
  getch();  
  fflush(stdin);  
  }  
   
  结果还是不行,那个字符还是有。  
   
  最奇怪的是,上面的代码在TC下编译并没有问题(我的是3.0),没有那个字符出来。但在VC下编译就是不行。  
   
  这是怎么回事?VC下的getch()用法特殊?难道是VC的bug?还是我的VC设置有问题??  
   
  另请问:那我在VC下如何解决这个问题?? 问题点数:80、回复次数:6Top

1 楼wyzegg(蛋)回复于 2001-10-21 23:52:24 得分 40

实战结果就是结论  
  Top

2 楼Sword_Sharp(多米诺)回复于 2001-10-21 23:52:48 得分 40

我运行时美有问题呀!(VC++6.0/win2000)Top

3 楼santaga(lynn)回复于 2001-10-21 23:54:48 得分 0

gzTop

4 楼eternalee(看看)回复于 2001-10-21 23:58:13 得分 0

看看  
  Top

5 楼yiyuan(一元)回复于 2001-10-22 00:51:57 得分 0

没有问题???我的是VC6,win98。  
   
  是大家的都没有问题吗??就我自己的有问题??Top

6 楼SlaSk(七叔)回复于 2001-10-22 07:57:59 得分 0

getch()  
  好像会把字符存储到缓冲区,你必须显式的把他传出来(或者缓冲满了),它才会自己出来。Top

相关问题

  • vc太奇怪了??????!!!!!
  • 奇怪的VC只读问题~
  • VC中使用ADO的奇怪问题
  • ~~~一个奇怪的vc故障~~~
  • 奇怪,奇怪
  • 奇怪,奇怪!
  • 奇怪奇怪???
  • 奇怪!奇怪
  • 奇怪奇怪...........?????...........
  • 在MSDN上的不能在VC上通过,奇怪?

关键词

  • vc
  • 字符
  • getch
  • 奇怪
  • fflush
  • stdin
  • 问题
  • 不行
  • scanf
  • insert something

得分解答快速导航

  • 帖主:yiyuan
  • wyzegg
  • Sword_Sharp

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo