c/c++语言开发共享如何退出while循环?

#include  main(void) { char ch; while (1) { if ((ch = getchar()) != EOF) { break; } putchar(ch); } return 0; } 

我怎么逃避呢? 我曾尝试使用EOF,但它没有用。

    我想你的意思是:

     int ch; 

    因为EOF不适合char

    也:

     if ((ch=getchar()) == EOF) break; 

    你的逻辑是倒退的。

    这个:

     char ch; 

    是错的, EOF不适合chargetchar()的返回值类型是int所以这段代码应该是:

     int ch; 

    另外,正如所指出的那样,你的逻辑是倒退的。 它循环而ch不是EOF ,所以你可以把它放在while

     while((ch = getchar()) != EOF) 

    与时间检查。 这更简单

     while((ch=getchar())!= EOF) { putchar(ch); } 

    EOF用于指示文件的结尾。 如果您正在从stdin中读取字符,则可以通过输入以下内容来停止此循环:

     while((ch=getchar()) != 0x1b) { // 0x1b is the ascii of ESC putchar(ch); } 

      以上就是c/c++开发分享如何退出while循环?相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/c-cdevelopment/560419.html

      (0)
      上一篇 2021年1月27日
      下一篇 2021年1月27日

      精彩推荐