VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)

 更新时间:2020年08月13日 12:20:15   作者:融茧化蝶  
这篇文章主要介绍了VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h” 或者 检测到 #include 错误。请更新includePath) (POSIX API),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

一、问题描述与分析

编辑C/C++程序,我推荐使用C/C++,VS Code相对于别的编译器来说有很多的优势。但是如果第一次使用的话,会觉得其不好用。因为如果不配置好的话,操作会比较麻烦。

注意:我这里是在windows下编写Linux程序。

例如在使用VS Code编辑C/C++程序在没有配置好的情况下,会出现如下图情况,

在这里插入图片描述
在这里插入图片描述

出现这种情况的原因是 在VS Code没有找到头文件。或者是VS Code没有配置好。
为了很好的解释上述的问题,请先了解下Cygwin、MinGW、POSIX等,并了解下Cygwin和MinGW之间的区别。
MinGw与Cygwin的区别中提到如下图,

在这里插入图片描述

如果在系统中安装好MinGW,并将VS Code配置好,则报错中将不会出现 “无法打开源文件 “stdio.h””,这是因为安装好的MinGW中是含有该头文件的。但是对于某些POSIX API,MinGW中是没有的。因此,为了满足我的开发需求,我选择使用Cygwin,

注意若你与我的开发需求不一样,接下来的Cygwin对你就是没有必要的。但后面的VS Code 配置是相应差不多的。

二、Cygwin下载与安装

该处可参考博客 https://blog.csdn.net/u010356768/article/details/90756742
1、下载Cygwim
Cygwin下载官网:http://www.cygwin.com/

在这里插入图片描述

2、下载完成后,运行安装 流程截图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

点击 ALL ,会出现很多包,我们主要是为了做C/C++的开发,因此,只需要选择 “Devel”中的binutils、 gcc 、mingw 、gdb、make

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

点击 下一步

在这里插入图片描述

等待下载安装完成

在这里插入图片描述
在这里插入图片描述

执行 下列命令查看安装状态。
cygcheck -c cygwin
gcc --version
g++ --version

在这里插入图片描述

三、配置VS Code

打开VS Code ,文件 => 首选项 => 设置 => 扩展 => C/C++ => include Path(点击在.json中编辑)

在这里插入图片描述
在这里插入图片描述

上图中,中括号中填写的就是 已经安装好的 Cygwin中头文件的路径。
如何获得路径?
在cygwin中执行 " gcc -v -x c -E - "

在这里插入图片描述

获得的路径是相对于cygwin根目录,因此,需要转成windows下的路径。
如何转?
找到 cygwin的安装目录,该目录下会有usr文件,该处usr就是上图中的usr。

在这里插入图片描述

/usr/include 等于 C:\cygwin64\usr\include,将其路径加入到 VS Code中,

在这里插入图片描述

注意该处的要点就是,让windows下的VS Code能够找到头文件,然后这些头文件都在cygwin的安装目录下。(若添加后,还是没有找到头文件,可在cygwin安装目录下直接搜索头文件,然后将其路径添加进来)

添加后效果如下,

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

添加成功后,可通过右键到定义查看头文件定义

在这里插入图片描述

总结

到此这篇关于VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h” 或者 检测到 #include 错误。请更新includePath) (POSIX API)的文章就介绍到这了,更多相关VS Code C/C++环境配置内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:

相关文章

  • C语言柔性数组的实现示例

    C语言柔性数组的实现示例

    柔性数组既数组大小待定的数组, C语言中结构体的最后一个元素可以是大小未知的数组,本文就来介绍一下柔性数组的用法,感兴趣的可以了解一下
    2024-03-03
  • C++ 字符串的反转五种方法实例

    C++ 字符串的反转五种方法实例

    通过不同的方法,实现对所输入字符串的反转,有需要的朋友可以参考一下
    2013-09-09
  • 基于C++内存分配、函数调用与返回值的深入分析

    基于C++内存分配、函数调用与返回值的深入分析

    本篇文章是对C++中的内存分配、函数调用与返回值进行了详细的分析介绍,需要的朋友参考下
    2013-05-05
  • C语言函数的递归调用详情

    C语言函数的递归调用详情

    这篇文章主要介绍了C语言函数的递归调用详情,递归做为一种算法在程序设计语言中广泛应用,主要的思考方式就是大事化小,下文具体的相关介绍,需要的小伙伴可以参考一下
    2022-04-04
  • Qt自定义控件实现线条型加载条

    Qt自定义控件实现线条型加载条

    这篇文章主要为大家详细介绍了Qt自定义控件实现线条型加载条,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-12-12
  • PTA刷题C语言编程顺序颠倒输出实现

    PTA刷题C语言编程顺序颠倒输出实现

    本篇文章是在刷PTA题目是遇到的一道题,给定一句话,要求将句中所有单词顺序颠倒输出,本文来带你解答,有需要的朋友可以借鉴参考下
    2021-09-09
  • 详解C++11中的线程锁和条件变量

    详解C++11中的线程锁和条件变量

    C++ 11允许开发者们以标准的、不依赖于平台的方式编写多线程程序。这篇文章概述了标准库对于线程和同步操作机制的支持。这些都是非常重要的知识,希望读者们可以认真看一下
    2021-06-06
  • C++ Leetcode实现从英文中重建数字

    C++ Leetcode实现从英文中重建数字

    本文主要介绍了当给你一个字符串s,其中包含字母顺序打乱的用英文单词表示的若干数字(0-9)时,如何通过Leetcode按升序返回原始的数字。感兴趣的童鞋可以来看看
    2021-11-11
  • 简单掌握C++中的函数模板

    简单掌握C++中的函数模板

    这篇文章主要介绍了C++中的函数模板,包括函数模板的声明和生成以及异常处理等基本知识,需要的朋友可以参考下
    2016-04-04
  • 详解C语言如何计算结构体大小(结构体的内存对齐)

    详解C语言如何计算结构体大小(结构体的内存对齐)

    结构体的内存对齐是有关结构体内容的很重要一个知识点,主要考察方式是计算结构体的字节大小,所以本文就给大家详细介绍一下C语言如何计算结构体大小,文中的代码示例介绍的非常详细,需要的朋友可以参考下
    2023-07-07

最新评论