【发布时间】:2020-05-28 15:24:04
【问题描述】:
我有一个简单的 c 程序,可以在屏幕上打印一些内容。 当我调试程序时,我可以看到 DEBUG CONSOLE,但是一旦我使用 fgets,我就看不到任何输出。使用 VS Code 调试时我的程序在哪里运行?
如果我只是运行我编译的 .exe,一切都会按预期打印。
#include <stdio.h>
#include <stdlib.h>
int main() {
printf("Hello World!\n");
printf("Enter your name\n");
char name[100];
// fgets(name, sizeof(name), stdin); // as soon as I uncomment this, no output is in the output console
printf("You name %s", name);
return 0;
}
我的launch.json:
{
"version": "0.2.0",
"configurations": [
{
"name": "(Windows) Launch",
"type": "cppvsdbg",
"request": "launch",
"program": "${workspaceFolder}/app.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false
}
]
}
【问题讨论】:
-
你是否在代码中添加了任何断点?
-
如果我添加一个断点,它会被命中,我可以通过代码,查看变量,但是标准输入和输出不在调试窗格中,这很有意义,因为它是只读窗口
-
尝试重新配置
tasks.json和launch.json他们可能会修复您的错误。
标签: c windows visual-studio-code vscode-debugger