• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

vscodec++的配置

武飞扬头像
silent_missile
帮助5

最近在用vscode写C 代码,涉及到一些配置,记录下来。

根据

https://code.visualstudio.com/docs/languages/cpp

至少要安装c 扩展

另外还需要至少增加cmake的支持

最后我选择在vscode中安装C/C Extention Pack

然后配置C/C 插件。这个插件的配置分2部分,一部分在.vscode/settings.json,另外一部分在.vscode/c_cpp_properties.json。要注意的是,这里的配置都是如何在vscode中提供代码智能识别、智能推断的功能,不是最后要生成的二进制文件所用的。

首先配置settings.json

进入“文件->首选项->设置”,最好是切换到“工作区”,然后找到“扩展->C/C ->Intelli Sense Engine”将其设置为“Tag Parse”,这样它才能在读取头文件的时候把目录下面的子目录中的头文件都读取进来。如果没有设置,那么你就要把大量嵌套的目录都塞到配置的头文件目录列表里,那样太麻烦,而且容易丢失。

然后设置“扩展->C/C ->Intelli Sense Engine Fallback”,默认是Disabled,要确认是Disabled。如果是Enabled它就会自动修改你的代码,这种智能有时候很智障。

另外还有一项是“Formating”,推荐选择clangFormat。

clangformat是一个可执行程序。

然后找到“扩展->C/C ->Clang_format_style”,这里有提示,可以看提示。可以直接把clangformat命令所支持的参数直接写到这里,不过更多更复杂的配置需要靠配置文件,这样就要把这一项设置为file。

然后切换到命令行,在项目根目录下运行

clang-format -style=llvm -dump-config > .clang-format

这样就会把llvm风格的配置直接导出到.clang-format文件中,如果想要导出其他风格的,可以运行

clang-format --help

查看其他选项。

文件生成后,可以用vscode打开,逐条调整。比如说ColumnLimit,这代表一行包含多少个字符,多于这个值就要换行,默认值是80,这符合历史传统,不过因为大家现在都用大屏幕,所以这个值有点小,我会把它调大。

更多更详细的配置选项,可以查看

Clang-Format Style Options — Clang 16.0.0git documentation

当然以上也可以直接编辑settings.json加入以下内容

  1.  
    "C_Cpp.formatting": "clangFormat",
  2.  
    "C_Cpp.clang_format_style": "file",
  3.  
    "C_Cpp.intelliSenseEngineFallback": "Disabled",
  4.  
    "C_Cpp.intelliSenseEngine": "Tag Parser",

然后配置c_cpp_properties.json

然后进入“查看->命令面板”,输入“C/C ”会自动提示,进入“配置编辑(UI)”就可以在图形界面进行配置,主要是:编译器路径、IntelliSense模式、C标准、C 标准这几项。然后会自动生成c_cpp_properties.json

对于“包含路径”这一项,默认会把当前目录下的所有子目录都包含。另外如果前面设置了“Tag Parse”,也会把编译器自带的以及系统默认的目录下的头文件目录都包含。

以上的配置都是如何在vscode中提供代码智能识别、智能推断的功能。设置生成二进制的编译器是在cmake中设置的。

配置编译器

进入“查看->命令面板”,输入“cmake”按照提示,选择“Select a Kit”,在这里选择生成二进制时用的编译器。智能提示的编译器和生成二进制的编译器最好一致,这样语法完全兼容。

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhfgchkg
系列文章
更多 icon
同类精品
更多 icon
继续加载