IntelliSense 配置
使用此编辑器编辑在基础 c_cpp_properties.json 文件中定义的 IntelliSense 设置。在此编辑器中所做的更改仅适用于所选的配置。要一次编辑多个配置,请转到 c_cpp_properties.json

配置名称
用于标识某个配置的友好名称。LinuxMacWin32 是特殊标识符,用于将在这些平台上自动选择的配置。
选择要编辑的配置集。
编译器路径
用于生成项目来启用更准确的 IntelliSense 的编译器的完整路径,例如 /usr/bin/gcc。扩展将查询编译器以确定要用于 IntelliSense 的系统是否包含路径和默认定义。
指定编译器路径或从下拉列表中选择检测到的编译器路径。
编译器参数
用于修改所使用的包含或定义的编译器参数,例如 -nostdinc++-m32 等。采用其他空格分隔参数的参数应在数组中作为单独的参数输入,例如,对于 --sysroot <arg> 使用 "--sysroot", "<arg>"
每行一个参数。
IntelliSense 模式
要使用的 IntelliSense 模式,该模式映射到 MSVC、gcc 或 Clang 的平台和体系结构变体。如果未设置或设置为 ${default},则扩展将选择该平台的默认值。Windows 默认为 windows-msvc-x64,Linux 默认为 linux-gcc-x64,macOS 默认为 macos-clang-x64。选择特定 IntelliSense 模式以替代 ${default} 模式。仅指定 <compiler>-<architecture> 变体(例如 gcc-x64)的 IntelliSense 模式是旧模式,它们会根据主机平台自动转换为 <platform>-<compiler>-<architecture> 变体。
包含路径
include 路径是包括源文件中随附的头文件(如 #include "myHeaderFile.h")的文件夹。指定 IntelliSense 引擎在搜索包含的头文件时要使用的列表路径。对这些路径进行的搜索不是递归搜索。指定 ** 可指示递归搜索。例如,${workspaceFolder}/** 将搜索所有子目录,而 ${workspaceFolder} 则不会。如果在安装了 Visual Studio 的 Windows 上,或者在 compilerPath 设置中指定了编译器,则无需在此列表中列出系统 include 路径。
每行一个包含路径。
定义
分析文件时 IntelliSense 引擎要使用的预处理器定义的列表。(可选)使用 = 设置值,例如 VERSION=1
每行一个定义。
C 标准
用于 IntelliSense 的 C 语言标准的版本。注意: GNU 标准仅用于查询设置编译器以获取 GNU 定义,并且 IntelliSense 将模拟等效的 C 标准版本。
C++ 标准
用于 IntelliSense 的 C++ 语言标准的版本。注意: GNU 标准仅用于查询设置用来获取 GNU 定义的编译器,并且 IntelliSense 将模拟等效的 C++ 标准版本。

配置提供程序
可为源文件提供 IntelliSense 配置信息的 VS Code 扩展 ID。例如,使用 VS Code 扩展 ID ms-vscode.cmake-tools 从 CMake Tools 扩展提供配置信息。
Windows SDK 版本
要在 Windows 上使用的 Windows SDK 包含路径版本,例如 10.0.17134.0
Mac 框架路径
IntelliSense 引擎在 Mac 框架中搜索包含的标头时要使用的路径的列表。仅在 macOS 的配置中受支持。
每行一个路径。
强制包含
在处理源文件中的任何其他字符之前应包含的文件的列表。按列出的顺序包含文件。
每行一个文件。
点配置
Kconfig 系统创建的 .config 文件的路径。Kconfig 系统生成包含所有定义的文件以生成项目。使用 Kconfig 系统的项目示例包括 Linux 内核和 NuttX RTOS。
编译命令
工作区的 compile_commands.json 文件的完整路径。将使用在此文件中所发现的包含路径和定义,而不是为 includePathdefines 设置设定的值。如果编译命令数据库不包含与你在编辑器中打开的文件对应的翻译单元条目,则将显示一条警告消息,并且扩展将改用 includePathdefines 设置。
合并配置
如果为 true (或已选中),则将包含路径、定义和强制包含与来自配置提供程序包含路径、定义和强制包含合并。
浏览: 路径
标记分析器的路径列表,它用于搜索源文件所包含的标头。如果省略,includePath 将用作 path。默认情况下,以递归方式搜索这些路径。指定 * 可指示非递归搜索。例如: /usr/include 将在所有子目录中搜索,而 /usr/include/* 不会。
每行一个浏览路径。
浏览: 将符号限制为包含的标头
如果为 true (或已勾选),则标记分析器将仅分析在 ${workspaceFolder} 中由源文件直接或间接包含的代码文件。如果为 false (或未选中),标记分析器将分析在 Browse: path 列表内指定路径中找到的所有代码文件。
浏览: 数据库文件名
所生成的符号数据库的路径。这指示扩展将标记分析器的符号数据库保存在工作区默认存储位置以外的其他位置。如果指定了相对路径,则它将相对于工作区的默认存储位置(而不是工作区文件夹本身)。${workspaceFolder} 变量可用于指定相对于工作区文件夹的路径(例如 ${workspaceFolder}/.vscode/browse.vc.db)。