std*_*o.h 51 c c++ visual-studio-code
我正在尝试在Visual Studio Code中构建C/C++.我安装了C/C++和所有相关的扩展.
#include <stdio.h>
int main() {
printf("Test C now\n");
return 0;
}
Run Code Online (Sandbox Code Playgroud)
但是在#include <stdio.h>
"添加包含设置路径" 下面有一条绿线.当我单击它时,它会移动到"c_cpp_properties.json".
我可以在下面的配置中添加包含路径的方式和位置?
"configurations": [
{
"name": "Mac",
"includePath": ["/usr/include"]
}
]
Run Code Online (Sandbox Code Playgroud)
Vit*_*tox 45
对于从谷歌上掉下来的每个人,这里是 VSCode 1.40 (2019) 的修复程序:
打开全局 settings.json:文件 > 首选项 > 设置
然后选择“用户”选项卡,打开“扩展”部分,单击“C/C++”。然后滚动右侧面板,直到找到“在 settings.json 中编辑”按钮。
最后,添加“C_Cpp.default.includePath”部分。那里提供的代码来自我自己的系统(Windows 7)。您可以将其用作您自己的库路径的基础。(记住将 更改YOUR USERNAME
为您正确的系统(我的案例窗口)用户名)
(编辑信息:我的方法的递归存在问题。VSCode 不喜欢同一事物的多个定义。我用 解决了它"C_Cpp.intelliSenseEngine": "Tag Parser"
)
settings.json 中第 7 行之前的代码与 arduino 或 includePath 无关。你不能复制那个...
要添加到 settings.json 的 JSON 部分:
"C_Cpp.default.includePath": [
"C:/Program Files (x86)/Arduino/libraries/**",
"C:/Program Files (x86)/Arduino/hardware/arduino/avr/cores/arduino/**",
"C:/Program Files (x86)/Arduino/hardware/tools/avr/avr/include/**",
"C:/Program Files (x86)/Arduino/hardware/tools/avr/lib/gcc/avr/5.4.0/include/**",
"C:/Program Files (x86)/Arduino/hardware/arduino/avr/variants/standard/**",
"C:/Users/<YOUR USERNAME>/.platformio/packages/framework-arduinoavr/**",
"C:/Users/<YOUR USERNAME>/Documents/Arduino/libraries/**",
"${workspaceFolder}/libraries/**",
"${workspaceFolder}/**"
],
"C_Cpp.intelliSenseEngine": "Tag Parser"
Run Code Online (Sandbox Code Playgroud)
Nia*_*all 42
我可以在下面的配置中添加包含路径的方式和位置?
列表是一个字符串数组,因此添加一个包含路径看起来像;
"configurations": [
{
"name": "Mac",
"includePath": ["/usr/local/include",
"/path/to/additional/includes",
"/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include"
]
}
]
Run Code Online (Sandbox Code Playgroud)
资源; cpptools博客2016年3月31日.
链接源有一个显示Win32配置格式的gif,但同样适用于其他配置.
如果安装了Xcode,上面的示例包含SDK(OSX 10.11)路径.
注意我发现更改包含路径后可能需要一段时间才能更新.
cpptools扩展可以在这里找到.
可以在此处找到有关 VSCode中C++语言支持的更多文档(来自Microsoft).
为了保存(从讨论中),以下是tasks.json文件内容的基本片段,用于编译和执行C++文件或C文件.它们允许文件名中的空格(需要使用json转义其他引号compilerPath
).壳使用作为流道,从而允许汇编(c_cpp_properties.json
)和执行(compilerPath
该程序的).它还假定tasks.json"生活"在本地工作空间中(在.vscode目录下).可以在此处找到更多task.json详细信息,例如支持的变量等.
对于C++;
{
"version": "0.1.0",
"isShellCommand": true,
"taskName": "GenericBuild",
"showOutput": "always",
"command": "sh",
"suppressTaskName": false,
"args": ["-c", "clang++ -std=c++14 -Wall -Wextra -pedantic -pthread \"${file}\" && ./a.out"]
}
Run Code Online (Sandbox Code Playgroud)
对于C;
{
"version": "0.1.0",
"isShellCommand": true,
"taskName": "GenericBuild",
"showOutput": "always",
"command": "sh",
"suppressTaskName": false,
"args": ["-c", "clang -std=c11 -Wall -Wextra -pedantic -pthread \"${file}\" && ./a.out"] // command arguments...
}
Run Code Online (Sandbox Code Playgroud)
rye*_*nus 13
对于Mac用户只安装了命令行工具而不是Xcode,请检查/Library/Developer/CommandLineTools/
目录,例如::
"configurations": [{
"name": "Mac",
"includePath": [
"/Library/Developer/CommandLineTools/usr/lib/clang/8.1.0/include/",
"/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/4.2.1/tr1/",
"/usr/include/c++/4.2.1",
"/usr/local/include",
"/usr/include"
]
}]
Run Code Online (Sandbox Code Playgroud)
注意:您还可以
c_cpp_properties.json
通过C/Cpp: Edit Configurations
命令选项板(⇧⌘P)中的命令打开/生成文件.
在您的用户设置中添加:
"C_Cpp.default.includePath":["path1","path2"]
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
136049 次 |
最近记录: |