Clion为啥在run状态下使用ctrl+D直接退出程序,但是在debug状态下却可以crtl+D传入EOF?

在使用clion编译器的时候,写了一段统计字符数量的代码如下所示:

#include "stdio.h"
int main(void)
{
    unsigned int count = 0;
    char ch;

    while ((ch = getchar()) != EOF)
        count++;
    printf("You have enter %d letters.\n", count);

    return 0;
}

但是当我run的时候,输入crtl+D整个程序就直接结束了(第二张图片),没有出现后面printf的内容。但是当我使用无断点的debug的时候,ctrl+D就可以做到传入EOF(第一张图片),我使用gcc编译的文件也可以做到使用crtl+D传入EOF。

图片说明 **********************************************************************************************
图片说明

我百思不得其解,请问这个是为什么?最后可以告诉我原理,谢谢各位大佬

https://www.jianshu.com/p/f8a939ad7efd

遇到了一样的问题!求大佬解!