C 调试器在调试器模式打开时无法打印或获取输入

2024-11-07 23:59:49 编辑:抖狐科技 来源:摘自互联网

在 .vscode 文件夹中:

我的lanch.json:

    "configurations": [
        {
            "name": "c/c++: gcc.exe build and debug active file",
            "type": "cppdbg",
            "request": "launch",
            "program": "${filedirname}\${filebasenamenoextension}.exe",
            "args": [],
            "stopatentry": false,
            "cwd": "${filedirname}",
            "environment": [],
            "externalconsole": false,
            "mimode": "gdb",
            "midebuggerpath": "c:\mingw\bin\gdb.exe",
            "setupcommands": [
                {
                    "description": "enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignorefailures": true
                },
                {
                    "description": "set disassembly flavor to intel",
                    "text": "-gdb-set disassembly-flavor intel",
                    "ignorefailures": true
                }
            ],
            "prelaunchtask": "c/c++: gcc.exe build active file"
        }
    ],
    "version": "2.0.0"
}

登录后复制

task.json :

{
    "tasks": [
        {
            "type": "cppbuild",
            "label": "c/c++: gcc.exe build active file",
            "command": "c:\mingw\bin\gcc.exe",
            "args": [
                "-fdiagnostics-color=always",
                "-g",
                "${file}",
                "-o",
                "${filedirname}\${filebasenamenoextension}.exe"
            ],
            "options": {
                "cwd": "${filedirname}"
            },
            "problemmatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isdefault": true
            },
            "detail": "task generated by debugger."
        }
    ],
    "version": "2.0.0"
}

登录后复制

c_cpp_properties.json:

{
    "configurations": [
        {
            "name": "win32",
            "includepath": [
                "${workspacefolder}/**"
            ],
            "defines": [
                "_debug",
                "unicode",
                "_unicode"
            ],
            "windowssdkversion": "10.0.22621.0",
            "cstandard": "c17",
            "cppstandard": "c++17",
            "intellisensemode": "gcc-x64",
            "compilerpath": "c:/mingw/bin/gcc.exe"
        }
    ],
    "version": 4
}

登录后复制

C 调试器在调试器模式打开时无法打印或获取输入

代码:

#include <stdio.h>
int main(){
int i;
scanf("%d", &i);
printf("you entered: %d
", i);
return 0;
}

登录后复制

终端:

ps c:users*onedrivedocumentsinterview prepdsa 和小学习> & 'c:users**.vscodeextensionsms-vscode.cpptools-1.23.0-win32-x64debugadaptersbinwindowsdebuglauncher.exe' '--stdin=microsoft- miengine-in-caznmueg.sx2''--stdout=microsoft-miengine-out-kpfaclzx.m3o'''--stderr=microsoft-miengine-error-nq1rgwan.vxy'''--pid=microsoft-miengine-pid-d12jsuyv .lf0' '--dbgexe=c:mingwbingdb.exe' '--interpreter=mi'

当我按 f5 时,意味着我调试我的 c 代码,如果 scanf 存在,如果调试器位于 scanf ,并且如果我按 f10 ,则它不会打印任何内容,也不会接受任何输入,然后如图所示,什么也不会发生。我只能将鼠标悬停并查看变量值。我已经安装

 set up,

 ```codeLLB```

 and code runner extensions, as well.

Also, If I not put debugger at scanf function: it waits for input ,but when i write something and hit enter, nothing happens, also the debugger not allow to step next step...And after that if i stop the debugger, then what ever i wrote in terminal ,shows there immediately. Example: if i wrote fffff and then stop debugger then that word executes in terminal!

登录后复制

以上就是C 调试器在调试器模式打开时无法打印或获取输入的详细内容,更多请关注抖狐科技其它相关文章!

本站文章均为抖狐网站建设摘自权威资料,书籍,或网络原创文章,如有版权纠纷或者违规问题,请即刻联系我们删除,我们欢迎您分享,引用和转载,我们谢绝直接复制和抄袭!感谢...
我们猜你喜欢