Windows环境下VSCode C环境配置

前言:

本文记录了自己在配置 Windows环境下 VSCode C开发环境的遇到的问题和解决方法。

参考:

vscode c语言没有代码提示_clangd提示不生效-CSDN博客

VSCODE无法跳转_vscode 不能跳转-CSDN博客

vscode c/c++环境配置(MinGW)+调用第三官方库方法 - 知乎

vscode中配置或添加头文件路径_vscode include路径-CSDN博客

vscode“检测到 #include 错误,请更新 includepath。”的问题解决办法_vscode_OneBlackCat-GitCode 开源社区

VSCode 配置 C++:VSCode + Clang + Clangd + LLDB + CMake + Git_vscode clang-CSDN博客

正文:
1. 环境描述

我的开发环境:在 Windows10环境下安装了 VSCode 编辑器,然后在Windows环境下VSCode中安装扩展插件,进行C语言开发。

2. 遇到的问题1: 同时安装了扩展插件 "C/C++ Extension" 和 "Clangd Extension"后,两个插件冲突。

我按照有些博文的操作步骤在 Windows VSCode 中安装了扩展插件"C/C++ Extension" 和 "Clangd Extension",安装这两个扩展插件之后VSCode弹出提示说:

"You have both the Microsoft C++ (cpptools) extension and clangd extension enabled. The Microsoft IntelliSense features conflict with clangd's code completion, diagnostics etc."

提示的意思是说,vscode 的 c/c++插件的代码自动高亮(intelliSence)功能和clangd插件的代码自动补全功能冲突,询问用户是否关闭掉 vscode c/c++ 插件的IntelliSence 功能。

这里是一个坑,如果你直接点击了“Disable IntelliSence” 关闭了vscode c/c++插件的 IntelliSence 功能,在之后开发C/C++ 源码的时候就会发现 VSCode 不能自动进行代码补全和C函数符号跳转了,关闭 vscode c/c++插件的 IntelliSence 后,vscode 有时间会提示如下错误信息:

IntelliSense-related commands cannot be executed when `C_Cpp.intelliSenseEngine` is set to `disabled`.

“Disable IntelliSence” 后VSCode中源码不能自动跳转的原因,在参考链接里的两个博客里也提到了,遇到这个个问题的人不止我一个。如果你已经不小心点击了“Disable IntelliSence” 禁用了了vscode c/c++插件的补全功能,怎么在此打开IntelliSence那?可以参考如下链接中博客的步骤进行操作。

VSCODE无法跳转_vscode 不能跳转-CSDN博客

3. 遇到问题2: 将头文件目录加入到vscode搜索路径

遇到的第二个问题是如何将包含头文件的目录假如到VSCode的自动搜索路径中,让VSCode c/c++ 插件可以找到c语言的函数声明和结构体定义,实现在VSCode中可以自动跳转到函数定义的地方。

解决方法: 在VSCode窗口中按下 "Ctrl + Shit + P"组合键,或者按下 “F1” 键,在出现的收缩框里搜索 "C/C++:Edit Configuration(JSON)"

编辑 c_cpp_properties.json 文件,将包含头文件的目录路径加到“includePath:”这里

4.遇到问题3: VSCode 文件目录下面没有自动生成 .vscode/c_cpp_properties.json 文件

该问题的原因和问题1的原因一样,都是vscode c/c++ extension 的 IntelliSence 被关闭。如果vscode c/c++ extension 的 IntelliSence 功能启用,在vscode打开C/C++源码目录时,vscode就会自动在C/C++源码目录下创建  .vscode/c_cpp_properties.json 文件。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/6988.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【软件工程】测试

目录 前言软件测试的目标测试准则测试方法测试方案(重点)白盒测试(重点)逻辑覆盖测试语句覆盖判定覆盖(分支覆盖)条件覆盖判定/条件覆盖条件组合覆盖总结 基本路径覆盖法 黑盒测试等价类法边界值分析法 软件…

导数和偏导数练习

导数题目列表 偏导数题目列表 这里是上述50个导数和偏导数练习题的答案: 导数答案列表 偏导数答案列表 更多问题咨询 Cos机器人

Linux之命令行参数与环境变量

命令行参数&环境变量 命令行参数 main函数也是一个函数,其实也可以携带参数的 int main( int argc, char *argv[ ], char *envp[ ] ) {program-statements } 那这里是有三个参数的: 第一个参数: argc 是个整型变量,表示命令行参数的个数…

ABAP 第二代增强-采购申请子屏幕增强

文章目录 第二代增强-采购申请子屏幕增强需求实现过程创建项目运行效果客户屏幕的PBO全局变量获取数据更新数据运行效果查询底表修改数据 第二代增强-采购申请子屏幕增强 需求 实现过程 创建项目 运行效果 客户屏幕的PBO 全局变量 *&------------------------------------…

关于Docker的数据管理

文章目录 一、Docker的数据管理1、数据卷1.1 数据卷定义1.2 数据卷配置 2、数据卷容器2.1 创建数据卷容器2.2 使用--volume-from来挂载luck02 二、端口映射三、容器互联1、创建容器互联2、进入luck02测试(ping 容器名/别名) 四、Docker镜像的创建1、基于…

Java类文件.class详解

一、编译型语言和解释型语言的区别 1、编译型语言: 在编译型语言中,源代码会被整个编译成机器码或者中间代码(比如Java的字节码),生成可执行文件。 运行程序时,不需要再对源代码进行解释,而是…

RockChip Android13 NFC SL6320移植

环境:RK3568 Android13 一:驱动移植 1、驱动 将SL6320驱动代码拷贝至kernel-5.10/drivers/misc/sl6320/ 特殊说明:勿将驱动代码放置于kernel-5.10/drivers/nfc/目录下,会导致sl6320驱动生成设备节点时因/dev/nfc节点以创建而加载失败。 2、DTS 本次硬件设计电路走I2C协…

服务器数据恢复—多块磁盘离线导致阵列瘫痪,上层lun不可用的数据恢复案例

服务器存储数据恢复环境: 某品牌MSA2000存储,该存储中有一组由8块SAS硬盘(其中有一块热备盘)组建的RAID5阵列,raid5阵列上层划分了6个lun,均分配给HP-Unix小型机使用,主要数据为oracle数据库和O…

【LeetCode刷题】34. 在排序数组中查找元素的第一个和最后一个位置

1. 题目链接 34. 在排序数组中查找元素的第一个和最后一个位置 2. 题目描述 3. 解题方法 找到元素的第一个位置,也就是找大于等于目标的最小值找到元素的最后一个位置,也就是找小于等于目标的最大值可以利用2次二分查找来解决 3.1. 第一次查找 3.2. …

今日详解,教你如何不直播在视频号卖货

大家好,我是电商笨笨熊 视频号作为背靠微信的平台,从不需要考虑自身的流量问题, 因此在视频号推出之后就有大批的主播从其他平台转入视频号; 而这时候很多普通人应该也发现了新的机会,不再去内卷抖音、快手直播&…

【Git】Github创建远程仓库并与本地互联

创建仓库 点击生成新的仓库 创建成功后会生成一个这样的文件 拉取到本地 首先先确保本地安装了git 可以通过终端使用 git --version来查看是否安装好了git 如果显示了版本信息,说明已经安装好了git,这时候我们就可以进入我们想要clone到问目标文件夹 …

python-正则表达试-实践1

匹配html标签中的任意标签内数据 匹配所有包含’oo’的单词 import re text "JGood is a handsome boy, he is cool, clever, and so on..." re.findall(r\w*oo\w*, text) 匹配 html中title里面的内容 原文: import re file r./202304.html f open(…

2023数维杯A题原创完整论文思路和求解代码

河流对地下水有着直接地影响,当河流补给地下水时,河流一旦被污染,容易导致地下水以及紧依河流分布的傍河水源地将受到不同程度的污染,这将严重影响工农业的正常运作、社会经济的发展和饮水安全。在地下水污染中最难治理和危害最大的是有机污染,因而对有机污染物在河流-地下…

WordPress Automatic插件 SQL注入漏洞复现(CVE-2024-27956)

0x01 产品简介 WordPress Automatic(又称为WP Automatic)是一款流行的WordPress插件,旨在帮助网站管理员自动化内容创建和发布。该插件可以从各种来源(如RSS Feeds、社交媒体、视频网站、新闻网站等)获取内容,并将其自动发布到WordPress网站。 0x02 漏洞概述 WordPres…

从论文中看AI绘画

个人博客:Sekyoro的博客小屋 个人网站:Proanimer的个人网站 主要看是看Diffusion Models,CLIP,ControlNet,IP-Adapter这种经典论文,尝试总结论文写作的一些方式以及图像生成模型的一些内在思想. 对于其中的数学原理和代码不过深究. DDPM 使用扩散模型得到高质量图像,证明了这…

“给力”用日语怎么说?柯桥成人日语培训

在日语中,给力这个词可以翻译成几个不同的表达方式,具体取决于语境。以下我将给出几个常见的日语翻译以及例句帮助理解: スゴイ 这个词意思为“太棒了”,是表达给力的最常见说法。 例如: これはスゴイ映画だね。这电影太给力了! 最高 意思为“最棒的”,也可以用来表达给力。 例…

连锁店收银系统为什么贵

连锁店收银系统会比单机收银系统价格高一些,主要有三个方面的原因: 复杂的功能需求 连锁店收银系统需要管理多个分店的进销存、库存调拨、门店订货等操作,以及会员管理,商淘云连锁收银系统还提供了连锁线上商城等功能。这些功能的…

“胖猫”事件

1.她自以为手段高明,不过是他心甘情愿罢了。 2. 可惜他在最后一刻,也没怨恨过她。 3.她反复确定用不用还,他反复确定有没有爱。 4. 他才21岁,只想见你一面,有什么错。 5. 希望你学会爱的时候,爱的第一个人是…

csrf攻击(跨站请求伪造)【2】

1.DVWA中csrf漏洞验证low (1)受害者将密码更改为password,显示更改成功 (2)受害者未退出登录状态,打开了新链接(黑客设计好的修改密码为admin123(原本为passwrod)的链接),导致受害者密码被更改&#xff0c…

Python-VBA函数之旅-pow函数

目录 一、pow函数的常见应用场景 二、pow函数使用注意事项 三、如何用好pow函数? 1、pow函数: 1-1、Python: 1-2、VBA: 2、推荐阅读: 个人主页:神奇夜光杯-CSDN博客 一、pow函数的常见应用场景 Py…