vscode如何搭建c/c++开发环境?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
<强> vs代码配置c/c++环境强>
虽然平时比赛要求用的是代码块,但是很尴尬的是我不喜欢代码块的那个界面,平时编程感觉太白很伤眼睛。再加上最近一直在折腾个人博客,对于前端,虽然没基础,但是还是知道用vs代码还不错,因此,我又开始了瞎折腾的精神。希望平时编程也能通过vs代码编译c++,但是正常情况下vs代码对c++编译是很不友好的,所以想要成功编译c++程序,要通过自己配置。但是我在网上搜到的教程很少有能一次解决我的问题的,所以参考了几篇博客后,总结了一下。
(更改生成文件位置)
不需要更改,或者只是为了编译运行c/c++的可以直接往下看。
这个是Linux的,如果需要的窗户,可以自己试一试,具体应该不会差太多
因为文件分配不够美观(我用的文件比较多,导致生成的. o文件都堆叠在一起,很丑),所以我动了在编译文件时将生成的a/a。阿文件更换位置再运行,一开始打算通过命令行命令直接在其他位置生成生成文件,但是我并没有找到此类命令,然后发现编译时运行的命令是这样的<代码> cd“/home/acm/文件/acm/?,,g + +。cpp - o一个,,“/home/acm/文件/acm/? 代码,所以我决定在编译后的命令间加上移动文件命令<代码> mv/home/acm/Documents/acm/Documents/代码>这样的话就将生成文件放在了acm目录下的文档文件夹下,不会导致多个A/a.o文件堆积在acm目录下。而task.json文件我没有找的修改方法,应该可以修改“command"实现,它可以运行脚本,但是我写不来,所以我是通过修改了<强> code-runner 强>的命令来实现的。下图为我修改后的vs代码
<强>实现方法强>
安装code-runner后在settings.json中找到<强> code-runner.executorMap >强,将其中的<代码> cpp代码>修改为<代码>“cpp":“cd dir和美元,g++文件名- o fileNameWithoutExt美元,,mv fileNameWithoutExt dir/文件/fileNameWithoutExt美元美元,,dir/文件/fileNameWithoutExt"美元,代码>其中的<强>文件强>是我自己的目录,请自己修改,其他编译命令也可以修改
我整个文件的结构如图
上面是正常的编译运行,还要一处就是调试的生成文件,这里修改<强> launch.json 强>即可
<强>更改位置的任务。json 强>
{//见https://go.microsoft.com/fwlink/& # 63; LinkId=733558//任务的文档。json格式 “version":“2.0.0" “command":“g++“, “args":( “-g", “化c++ 11“,//? {workspaceFolder}/$ {file}“,//? {file}“, “$ {workspaceFolder}/$ {fileBasenameNoExtension} .cpp", “-o", “$ {workspaceFolder}/文件/$ {fileBasenameNoExtension} .o", )//编译命令参数 “problemMatcher": { “称:“cpp" “fileLocation":( “relative", “$ {workspaceFolder}/Documents" ), “pattern":( { “regexp":“^ ([^ \ \ \ \ s]。*) \ \ \ \ ((\ \ \ \ d +, \ \ \ \ d +) \ \ \ \): \ \ \ \ s *(. *)“美元, “file": 1、 “location": 2//癿essage": 3 } ] }, “group": { “kind":“build" “isDefault":没错 } }//癱ommand":“g++“,
<强>发射。json 强>
{//使用智能感知了解可能的属性。//鼠标查看现有属性的描述。//获取更多信息,请访问:https://go.microsoft.com/fwlink/& # 63; linkid=830387 “version":“0.2.0" “configurations":( { “name":“(gdb) Launch" “type":“cppdbg" “request":“launch" “program":“$ {workspaceFolder}/文件/$ {fileBasenameNoExtension} .o", “args": [], “stopAtEntry":假的, “cwd":“$ {workspaceFolder}/Documents" “environment": [], “externalConsole":假的, “MIMode":“gdb" “miDebuggerPath":“/usr/bin/gdb", “preLaunchTask":“g++“, “setupCommands":( { “description":“使gdb"精细打印; “text":“-enable-pretty-printing" “ignoreFailures":没错 } ] }, ] }//皃rogram":“$ {workspaceFolder}/{fileBasenameNoExtension} .o"美元,//癱wd":“$ {workspaceFolder}“vscode如何搭建c/c++开发环境