我的Visual Studio代码无法正常运行我的代码

时间:2020-04-05 10:50:05

标签: c visual-studio-code

我无法使用C语言在VS Code中正确运行/调试代码。我已经在VSC,Mingw上安装了C / C ++包,并为Mingw应用了路径。我所有的文件也都运行.c格式。

只有我的代码的最后一部分在VSC中不断崩溃,当我在网站编译器上运行相同的代码时,它起作用了!

这是我的代码:

#include <stdio.h>

int main(void) {
    int num1;
    int num2;

    printf("Enter a number: ");
    scanf("%d", &num1);

    printf("Enter another number: ");
    scanf("%d", &num2);

    printf("Answer: %d ", num1 + num2);
    return 0;
}

最后一个printf是VSC关闭输出窗口的地方,所以我永远也看不到代码的最终结果。有人有解决方案吗?非常感谢!

2 个答案:

答案 0 :(得分:0)

从控制台运行程序:

  1. 在搜索框中,键入cmd
  2. cd \path_to_your_executable
  3. 运行程序。

答案 1 :(得分:0)

从Visual Studio运行控制台程序时,它将打开一个终端窗口,运行该程序,并且在程序退出时终端窗口会自动关闭。这是Microsoft Windows平台的一个经典问题,尽管像您这样的数百万新手程序员都遇到了同样的问题,但他们似乎并不在意。

如果您自己打开终端窗口,可以通过从开始菜单运行CMD命令,将当前目录更改为程序二进制文件的目录之后,便可以手动运行程序。

要防止直接从Visual Studio直接运行时终端窗口立即关闭,应在从getchar();返回之前添加2条main()语句,以等待用户输入并有机会看到输出。仅用getchar()读取一个字节是不够的,因为它将仅读取用户为响应第二个提示而输入的待处理换行符。

还请注意,最好输出尾随换行符以确保在某些旧系统上正确刷新了输出:

printf("Answer: %d\n", num1 + num2);

这是可以测试的修改程序:

#include <stdio.h>

int main(void) {
    int num1 = 0, num2 = 0;

    printf("Enter a number: ");
    scanf("%d", &num1);

    printf("Enter another number: ");
    scanf("%d", &num2);

    printf("Answer: %d\n", num1 + num2);

    getchar(); // read the pending newline
    getchar(); // read at least another byte from the user.

    return 0;
}