vscode中有两种方式去设置,一种是基于MinGW ,一种是基于LLVM中的clang工具
配置文件在vscode打开的工程中,路径在I:\TBOX\111\.vscode\settings.json,或者I:\TBOX\222\.vscode\settings.json
两种内容分别如下:
I:\TBOX\111\.vscode\settings.json
{
"files.associations": {
"random": "cpp",
"stdio.h": "c",
"codecvt": "c",
"condition_variable": "c",
"cstddef": "c",
"forward_list": "c",
"list": "c",
"string": "c",
"rope": "c",
"future": "c",
"limits": "c",
"memory": "c",
"new": "c",
"functional": "c",
"regex": "c",
"type_traits": "c",
"custom_main.h": "c",
"rs485_service.h": "c",
"net_service.h": "c",
"uart_init.h": "c",
"exception": "c",
"fstream": "c",
"iosfwd": "c",
"ostream": "c",
"shared_mutex": "c",
"sstream": "c",
"streambuf": "c",
"aima_custom_tls.h": "c",
"cm_common.h": "c",
"tsp_control.h": "c",
"tsp_comm.h": "c",
"stdlib.h": "c",
"string.h": "c",
"cm_iomux.h": "c",
"typeindex": "c",
"typeinfo": "c",
"cm_gpio.h": "c",
"gnss_service.h": "c",
"time.h": "c",
"vat_service.h": "c",
"array": "c",
"string_view": "c",
"cm_os.h": "c",
"thread": "c",
"cmath": "c",
"complex": "c",
"cjson.h": "c",
"sockets.h": "c",
"param_service.h": "c",
"pm_service.h": "c",
"cstring": "c",
"cm_fs.h": "c",
"base_q.h": "c",
"charconv": "c",
"mutex": "c",
"cstdarg": "c",
"chrono": "c",
"istream": "c",
"ratio": "c",
"scoped_allocator": "c",
"tuple": "c",
"utility": "c",
"cm_uart.h": "c",
"cm_rtc.h": "c",
"coord_transform.h": "c",
"soa_api.h": "c",
"tsp_event.h": "c",
"md.h": "c",
"cm_mem.h": "c",
"stdint.h": "c",
"gbl_types.h": "c",
"cm_sys.h": "c",
"ota_process.h": "c",
"cm_virt_at.h": "c",
"sha256.h": "c"
},
"C_Cpp_Runner.cCompilerPath": "gcc",
"C_Cpp_Runner.cppCompilerPath": "g++",
"C_Cpp_Runner.debuggerPath": "gdb",
"C_Cpp_Runner.cStandard": "",
"C_Cpp_Runner.cppStandard": "",
"C_Cpp_Runner.msvcBatchPath": "C:/Program Files/Microsoft Visual Studio/VR_NR/Community/VC/Auxiliary/Build/vcvarsall.bat",
"C_Cpp_Runner.useMsvc": false,
"C_Cpp_Runner.warnings": [
"-Wall",
"-Wextra",
"-Wpedantic",
"-Wshadow",
"-Wformat=2",
"-Wcast-align",
"-Wconversion",
"-Wsign-conversion",
"-Wnull-dereference"
],
"C_Cpp_Runner.msvcWarnings": [
"/W4",
"/permissive-",
"/w14242",
"/w14287",
"/w14296",
"/w14311",
"/w14826",
"/w44062",
"/w44242",
"/w14905",
"/w14906",
"/w14263",
"/w44265",
"/w14928"
],
"C_Cpp_Runner.enableWarnings": true,
"C_Cpp_Runner.warningsAsError": false,
"C_Cpp_Runner.compilerArgs": [],
"C_Cpp_Runner.linkerArgs": [],
"C_Cpp_Runner.includePaths": [],
"C_Cpp_Runner.includeSearch": [
"*",
"**/*"
],
"C_Cpp_Runner.excludeSearch": [
"**/build",
"**/build/**",
"**/.*",
"**/.*/**",
"**/.vscode",
"**/.vscode/**"
],
"C_Cpp_Runner.useAddressSanitizer": false,
"C_Cpp_Runner.useUndefinedSanitizer": false,
"C_Cpp_Runner.useLeakSanitizer": false,
"C_Cpp_Runner.showCompilationTime": false,
"C_Cpp_Runner.useLinkTimeOptimization": false,
"C_Cpp_Runner.msvcSecureNoWarnings": false
}
I:\TBOX\222\.vscode\settings.json
{
"C_Cpp_Runner.cCompilerPath": "gcc",
"C_Cpp_Runner.cppCompilerPath": "g++",
"C_Cpp_Runner.debuggerPath": "gdb",
"C_Cpp_Runner.cStandard": "",
"C_Cpp_Runner.cppStandard": "",
"C_Cpp_Runner.msvcBatchPath": "C:/Program Files/Microsoft Visual Studio/VR_NR/Community/VC/Auxiliary/Build/vcvarsall.bat",
"C_Cpp_Runner.useMsvc": false,
"C_Cpp_Runner.warnings": [
"-Wall",
"-Wextra",
"-Wpedantic",
"-Wshadow",
"-Wformat=2",
"-Wcast-align",
"-Wconversion",
"-Wsign-conversion",
"-Wnull-dereference"
],
"C_Cpp_Runner.msvcWarnings": [
"/W4",
"/permissive-",
"/w14242",
"/w14287",
"/w14296",
"/w14311",
"/w14826",
"/w44062",
"/w44242",
"/w14905",
"/w14906",
"/w14263",
"/w44265",
"/w14928"
],
"C_Cpp_Runner.enableWarnings": true,
"C_Cpp_Runner.warningsAsError": false,
"C_Cpp_Runner.compilerArgs": [],
"C_Cpp_Runner.linkerArgs": [],
"C_Cpp_Runner.includePaths": [],
"C_Cpp_Runner.includeSearch": [
"*",
"**/*"
],
"C_Cpp_Runner.excludeSearch": [
"**/build",
"**/build/**",
"**/.*",
"**/.*/**",
"**/.vscode",
"**/.vscode/**"
],
"C_Cpp_Runner.useAddressSanitizer": false,
"C_Cpp_Runner.useUndefinedSanitizer": false,
"C_Cpp_Runner.useLeakSanitizer": false,
"C_Cpp_Runner.showCompilationTime": false,
"C_Cpp_Runner.useLinkTimeOptimization": false,
"C_Cpp_Runner.msvcSecureNoWarnings": false,
"clang.executable": "D:/Program Files/LLVM/bin/clang.exe",
"clangd.path": "D:/Program Files/LLVM/bin/clangd.exe",
"clangd.arguments": [
"--background-index",
"--header-insertion=never",
"--limit-results=500",
"--suggest-missing-includes",
"--pch-storage=memory",
"--clang-tidy=false"
],
"files.exclude": {
"**/.git/**": true,
"**/.vscode/**": true,
"**/build/**": true,
"**/out/**": true,
"**/prebuild/**": true,
"**/tools/**": true
},
"search.exclude": {
"**/.git/**": true,
"**/.vscode/**": true,
"**/build/**": true,
"**/out/**": true,
"**/prebuild/**": true,
"**/tools/**": true
}
}
目前看,通过LLVM/clangd方式更好,跳转速度更快
I:\TBOX\222\.vscode\c_cpp_properties.json文件中的内容都是一样的
{
"configurations": [
{
"name": "windows-gcc-x64",
"includePath": [
"${workspaceFolder}/**"
],
"compilerPath": "D:/MinGW1.19.0/MinGW/bin/gcc.exe",
"cStandard": "${default}",
"cppStandard": "${default}",
"intelliSenseMode": "windows-gcc-x64",
"compilerArgs": [
""
]
}
],
"version": 4
}