这个对于我刚刚开始使用vscode的来说的人真的是无语,一点那个调试的小虫子,就给我跳到launch.json文件中,这个文件什么时候有的,我都不知道。最后百度了下,vs调试这个大概是调试要配置这个文件。这是我百度了一套可以用的文档。把这行"miDebuggerPath": "D:/environment/c/mingw64/bin/gdb.exe"改成自己的就好了。
{ "version": "0.2.0", "configurations": [ { "name": "C/C++", "type": "cppdbg", "request": "launch", "program": "${fileDirname}/${fileBasenameNoExtension}.exe", "args": [], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [], "externalConsole": true, //弹出黑框使用true,不弹出使用false "MIMode": "gdb", "miDebuggerPath": "D:/environment/c/mingw64/bin/gdb.exe", //选择gbd.exe的绝对路径 一定要是左斜杠,不然系统会系统提示找不到启动程序。 "preLaunchTask": "compile", "setupCommands": [ { "description": "Enable pretty-printing for gdb", "text": "-enable-pretty-printing", "ignoreFailures": true } ], }, ] }
还有一个文件是tasks.json,这个我的.vscode文件下没有,所以就创建了一个。
文件夹目录是这样的
{ "version": "2.0.0", "tasks": [ { "type": "shell", "label": "compile", "command": "gcc", //c文件就用gcc,cpp文件就用g++ "args": [ "-g", "${file}", "-o", "${fileDirname}\\${fileBasenameNoExtension}.exe" ], "problemMatcher": [ "$gcc" ], "group": { "kind": "build", "isDefault": true } } ] }
改了这2个文件之后vscode就可以正常调试c语言了。
scanf函数需要接收数据,在vscode的输出台上无法输入数据。需要进行以下调整。
1.在vscode中点击文件;
2.点击首选项,点击设置;
3.搜索关键词“code-runner.runInTerminal”,选中此选项即可。
这边还有中说法是在launch.json文件中将 “”externalConsole": true,为true表示弹出我window10的dos界面。但是我改了无true还是无用。
这里百度了很多篇博客。分享2篇感觉挺好的给大家
https://www.cnblogs.com/stu-jyj3621/p/12815080.html
https://blog.csdn.net/lzyws739307453/article/details/89823900
这2篇都写的挺不错,我最后解决的话是把vscode里面的所有的编码格式全改为gbk才没有乱码问题。