You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VS Code中C语言代码运行无输出,请求技术排查

解决VS Code中C程序无输出的问题

你的问题根源是标准输出缓冲区的行缓冲机制:
printf("Enter your name: "); 末尾没有换行符\n,默认情况下标准输出是行缓冲模式,只有遇到换行符或缓冲区满时才会把内容输出到控制台。这行提示被留在缓冲区里,而后续的scanf("%s", name);会阻塞程序等待用户输入,导致你看不到任何输出,误以为程序没运行。

下面是几种有效解决方法:

  • 给提示添加换行符:
    修改第一个printf语句为:

    printf("Enter your name: \n");
    

    换行符会触发缓冲区自动刷新,提示内容会立刻显示在控制台。

  • 手动刷新输出缓冲区:
    在第一个printf之后调用fflush(stdout)强制输出缓冲区内容,代码调整为:

    printf("Enter your name: ");
    fflush(stdout);
    scanf("%s", name);
    
  • 检查VS Code终端设置:
    确保使用VS Code集成终端而非外部终端,部分外部终端可能存在缓冲延迟。可以通过VS Code设置(快捷键Ctrl+,)搜索terminal.integrated.defaultProfile,选择适配你系统的终端(如Windows下的PowerShell、macOS/Linux下的bash)。

调整后运行程序,就能正常看到输入提示,输入名字后也会输出对应的欢迎内容。

内容的提问来源于stack exchange,提问作者colonel bond

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 15:55:08