vs code C语言环境搭建

mac2022-06-30  107

最近重温C语言,因为很多练习只是小程序,并不需要Clion和Codeblocks这样工程导向的编译软件,所以下载了vs code,并试图搜索相应的环境,在此过程中发现,网上许多vs code 的c/c++环境配置都是以c++为目标的,不能直接编译C语言,在参考了许多前辈的文章后,才有了本文,如有不妥之处,还望各位前辈海涵。


0.参考资料

https://blog.csdn.net/bat67/article/details/76095813

https://hk.saowen.com/a/9598540e9e5ae7838bdd78c4cd6a19ffb167f374c811e92fdf0e595b71ad13db

1.安装编译器

https://sourceforge.net/projects/mingw/

 

2.安装VS code

https://code.visualstudio.com/Download 

3.安装插件

4.配置编译文件

launch.json

请注意,这一条请务必填写你自己的路径,让编译器找到gdb.exe。 "miDebuggerPath": "C:\\MinGW\\bin\\gdb.exe", // miDebugger的路径,注意这里要与MinGw的路径对应 1 { 2 // 使用 IntelliSense 了解相关属性。 3 // 悬停以查看现有属性的描述。 4 // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387 5 "version": "0.2.0", 6 "configurations": [ 7 { 8 "name": "C Launch (GDB)", // 配置名称,将会在启动配置的下拉菜单中显示 9 "type": "cppdbg", // 配置类型,这里只能为cppdbg 10 "request": "launch", // 请求配置类型,可以为launch(启动)或attach(附加) 11 //"launchOptionType": "Local", // 調試器啟動類型,這裏只能為Local 12 "targetArchitecture": "x86", // 生成目標架構,一般為x86或x64 13 14 "program": "${cwd}\\${fileBasenameNoExtension}.exe",// 将要进行调试的程序的路径 15 "args": [], // 程序调试时传递给程序的命令行参数,一般设为空即可 16 "stopAtEntry": false, // 设为true时程序将暂停在程序入口处,一般设置为false 17 "cwd": "${workspaceRoot}", // 调试程序时的工作目录,一般为${workspaceRoot}即代码所在目录 18 "environment": [], 19 "externalConsole": true, // 调试时是否显示控制台窗口,一般设置为true显示控制台 20 "MIMode": "gdb", 21 22 "miDebuggerPath": "C:\\MinGW\\bin\\gdb.exe", // miDebugger的路径,注意这里要与MinGw的路径对应 23 24 "preLaunchTask": "gcc", // 调试会话开始前执行的任务,一般为编译程序,c++为g++, c为gcc 25 "setupCommands": [ 26 { 27 "description": "Enable pretty-printing for gdb", 28 "text": "-enable-pretty-printing", 29 "ignoreFailures": true 30 } 31 ] 32 } 33 ] 34 }

 

 

tasks.json

{ "version": "2.0.0", "command": "gcc", // 編譯C++用g++,用MinGW和clang的自行修改。 "args": ["${file}", "-o", "${fileBasenameNoExtension}.exe", "-g3", "-Og", "-Wall", "-static-libgcc", "-std=c11", "-fexec-charset=GBK", "-finput-charset=UTF-8"], // 編譯命令參數,C++可用-std=c++14 "problemMatcher": { "owner": "c", "fileLocation": ["relative", "${workspaceRoot}"], "pattern": { "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$", "file": 1, "line": 2, "column": 3, "severity": 4, "message": 5 } } }

 

c_cpp_properties.json

{ "configurations": [ { "name": "Win32", "includePath": [ "${workspaceFolder}/**" ], "defines": [ "_DEBUG", "UNICODE", "_UNICODE" ], "compilerPath": "C:\\MinGW\\bin\\gcc.exe", "cStandard": "c11", "cppStandard": "c++17", "intelliSenseMode": "clang-x64" } ], "version": 4 }

 

settings.json(该项是用于无缝切换C语言和c++的,但是博主现在没有搞懂,而且直接照搬前辈的配置会导致报错,暂时不建议添加此配置文件)

// 將設置放入此文檔中以覆蓋默認值和用户設置。 { "files.defaultLanguage": "c", "code-runner.runInTerminal": false, "code-runner.executorMap": { "c": "cd $dir && gcc $fileName -o $fileNameWithoutExt -Wall -g3 -Og -static-libgcc -std=c11 && $dir$fileNameWithoutExt", "cpp": "cd $dir && g++ $fileName -o $fileNameWithoutExt -Wall -g3 -Og -static-libgcc -std=c++14 && $dir$fileNameWithoutExt" } }

 

 

5.大功告成

转载于:https://www.cnblogs.com/FlyDangerFox/p/9896655.html

相关资源:垃圾分类数据集及代码
最新回复(0)