在Windows下clion无法输入EOF

代码:

#include "stdio.h"

int main()
{
    int  ch=0;
    while((ch=getchar()),ch!=EOF )
    {
        putchar(ch);
    }
    return 0;
}

运行结果:

img


如图:输入数字后可正常打印,但输入ctrl+d后第一次返回结果为^D与^Z,后面再次输入ctrl+d后返回^D
配置环境为mingw

img

windows下,ctrl + z是模拟输入EOF

在window系统中,是按Ctrl+Z组合键后再按回车键,就代表输入结束。

在UNIX/Linux/Mac OS系统中,才是Ctrl+D代表输入结束。

img


图片中^Z就表示按Ctrl+Z组合键

如果在 Registry将run.process.with.pty中将对勾取消后,输入的结果会在输入EOF后全部打印,请问还有没有更优解?
另外语言为c语言

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632