C在VS Code中包含路径-从何而来?

时间:2018-11-23 10:10:47

标签: visual-studio-code

我正在用VS Code组合一个简单的C项目,该项目将仅使用GCC编译器编译单个C文件。

我已经创建了c_cpp_properties.jsontasks.json

我不清楚GCC编译器应该从哪里获取包含目录。

将包含目录通过c_cpp_properties.json添加到includePath

"configurations": [
        {
            "name": "Win32",
            "includePath": [
                "C:/include/path1",
                "C:/include/path2"
            ],...

它不起作用。

仅当我将路径作为编译器参数添加到tasks.json时,编译成功:

   "tasks": 
    [
        {
            "label": "Compile C file",
            "type": "shell",
            "command": "gcc",
            "args": [
                "-g", 
                "-I",
                "C:/include/path1",
                "-c",
                "myfile.c"
            ],...

GCC编译器应该从哪里获取包含目录?
includePath中的c_cpp_properties.json有什么用?

c_cpp_properties.json Reference Guide说:

  • includePath:
    如果在您的设置文件中将“ C_Cpp.intelliSenseEngine”设置为“默认”,则IntelliSense将使用此路径列表搜索源文件中包含的标头。这基本上与使用-I开关传递给编译器的路径列表相同。如果路径以/ **结尾,则IntelliSense引擎将从该目录开始对文件进行递归搜索。如果在装有Visual Studio的Windows上,或者如果在editorPath设置中指定了编译器,则无需在此列表中列出系统包含路径。

0 个答案:

没有答案