索尼与三星 2015-05-01 03:18 采纳率: 33.3%
浏览 2270
已采纳

c语言getchar()putchar()问题

最近在看 c第二版英译版。有个问题并不解。
getchar()与putchar()
这是程序
int c;
c=getchar();
while(c!='\n')
putchar();
这里没有用fflush(stdin)函数清空,结果将无限循环显示。
而我用
while(c=getchar()!='\n')
putchar(c);
就不会循环。

请问各位大牛,这两个有什么区别,为什么结果就不一样?

  • 写回答

7条回答 默认 最新

  • threenewbee 2015-05-01 03:24
    关注

    第一种写法,c永远是第一次输入的值
    第二种写法,每次循环c都会读取下一个字符,才有机会遇到\n而终止。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(6条)

报告相同问题?

悬赏问题

  • ¥15 乌班图ip地址配置及远程SSH
  • ¥15 怎么让点阵屏显示静态爱心,用keiluVision5写出让点阵屏显示静态爱心的代码,越快越好
  • ¥15 PSPICE制作一个加法器
  • ¥15 javaweb项目无法正常跳转
  • ¥15 VMBox虚拟机无法访问
  • ¥15 skd显示找不到头文件
  • ¥15 机器视觉中图片中长度与真实长度的关系
  • ¥15 fastreport table 怎么只让每页的最下面和最顶部有横线
  • ¥15 java 的protected权限 ,问题在注释里
  • ¥15 这个是哪里有问题啊?