CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  新手乐园

问一个大家可能认为比较弱智的问题(c语言很基本的问题)

楼主strongest()2006-05-04 15:25:06 在 C/C++ / 新手乐园 提问

以下是   "the   c   programming   language"开始时的一个例子,吼吼,我是新手,不要奸笑  
   
  #include   <stdio.h>  
  /*   copy   input   to   output;   1st   version   */  
  main()  
  {  
  int   c;  
  c   =   getchar();/*从键盘读一个字符*/  
  while   (c   !=   EOF)   {/*该字符是否eof*/  
  putchar(c);/*如果不是eof则把这个字符打印在屏幕上*/  
  c   =   getchar();/*继续读下一个字符*/  
  }  
  }  
   
  按照我的理解(如注释)应该是读一个字符则显示一个字符,为什么实际过程不是这样?  
   
  实际过程是   按下回车是显示一个字符串?  
   
  真正的执行过程是怎样的?知道的帮忙解释一下哈  
   
  问题点数:20、回复次数:6Top

1 楼shanzhongyufu(山中渔夫)回复于 2006-05-04 15:45:34 得分 5

看看关于输入输出的内容,一般都是缓冲的,只有缓冲区满,或有新行时才一起输入(出),一般情况缓冲能够提高效率,方便工作,如果你在打游戏则,为了迅速响应,那是无缓冲的Top

2 楼jixingzhong(瞌睡虫·星辰)回复于 2006-05-04 17:18:22 得分 5

因为缓冲   ....  
  所有的输入字符会先保存在缓冲中,  
  当你输入回车后,  
  认为输入过程结束,  
  程序开始处理在缓冲中的字符   ...  
   
  所以不是即时的一个字符一个字符的处理的   ...Top

3 楼strongest()回复于 2006-05-04 17:23:34 得分 0

那么关于"缓冲"的这个机制     体现在程序的哪个部分?  
  putchar()   or   getchar()?  
   
  或者是   操作系统的对于输入输出的实现方式?Top

4 楼aboy85()回复于 2006-05-04 17:52:08 得分 5

操作系统的对于输入输出的实现方式Top

5 楼strongest()回复于 2006-05-04 19:20:48 得分 0

希望有牛人能够给点详细点的解答,或者是推荐本手册让我参考参考,3x.Top

6 楼yihan7h(奕寒)回复于 2006-05-04 21:07:38 得分 5

楼上的几位都说的差不多咯~~楼主不给分,有小气之嫌哈~~Top

相关问题

关键词

得分解答快速导航

  • 帖主:strongest
  • shanzhongyufu
  • jixingzhong
  • aboy85
  • yihan7h

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

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