【问题标题】:Simple hello world runs but printf does not print to command line简单的 hello world 运行但 printf 不打印到命令行
【发布时间】:2016-01-06 22:15:50
【问题描述】:
#include <stdio.h>

int main()
{
    printf("Hello World\n");
    return 0;
}

这是我的教授给我的简单的 hello world 程序。我被赋予它作为我在 C 语言中的第一个程序进行复制。我按照指示使用 Visual Studio 2013,并且我在运行 Windows 10 的 Surface Book 上。使用完全相同设置的同学可以很好地运行该程序。我的会构建,当我在没有调试的情况下运行时,控制台窗口会打开并且没有文本打印。我在网上找不到解决方案。

【问题讨论】:

  • 已知某些防病毒软件会干扰(如果我没记错的话,我认为是 Avast)。尝试禁用防病毒软件
  • 就像测试一样,尝试在return 之前添加while(1);。 (注意 - 你将不得不强制关闭它......)
  • 代码完全没问题。 (您也可以在某些在线编译器中尝试。)问题一定出在您的设置或您尝试执行程序的方式上。
  • 有时 Visual Studio 会在您有时间查看打印输出之前关闭窗口。在return 之前尝试getchar();。
  • 我只能说,Kernighan 和 Ritchie 将其呈现为练习 1 是有原因的,以及为什么他们在您解决它之后提供它(这可能确实非常困难!),其他一切都是比较容易。

标签: c


【解决方案1】:

确保您的程序不会很快完成并关闭控制台,以至于您看不到任何东西。试试这个:

#include <stdio.h>

int main()
{
    printf("Hello World\n");
    fflush (stdout); /* Make sure string is outputted to std output */
    getchar(); /* waits for a key to finish */
    return 0;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-08
    • 2021-02-14
    • 2018-03-11
    • 2011-05-03
    • 1970-01-01
    相关资源
    最近更新 更多