【问题标题】:why the program is not terminating in gcc? [closed]为什么程序没有在 gcc 中终止? [关闭]
【发布时间】:2020-07-19 19:46:59
【问题描述】:

为什么下面列出的程序没有终止。我在 linux 中使用 gcc 编译器。

#include <stdio.h>

int main(void)
{
    int c;

    printf("Enter characters: ");

    while((c = getchar()) != EOF)
        putchar(c);

    return 0;
}

【问题讨论】:

  • 你的意见是什么?
  • 你输入过EOF吗?

标签: c gcc getchar putchar


【解决方案1】:

当条件满足时,该程序将正常终止。如果您使用的是 Linux,请按 CTRL-D,它是 EOF 输入。这将满足条件并结束while 循环。

while((c = getchar()) != EOF)
    putchar(c);

此函数将永远运行,使您的程序在收到 EOF 输入之前不会终止。检查如何在您的本机系统上发送 EOF。一旦您输入该程序将终止。

【讨论】:

  • 如果您在 Windows 上,请按 Ctrl-D,这是 EOF 输入。... 不,Ctrl-D 适用于 Unix 系统,例如 linux 或 Mac/OS .在 Windows 上,您可以输入 Ctrl-Z Enter
  • 好点,会更正!
猜你喜欢
  • 2016-07-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-02-15
  • 2019-07-09
  • 2019-12-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多