ubuntu 20.04 C和C++的标准头文件都放在哪个目录?

在 Ubuntu 20.04 中,C 和 C++ 标准头文件的存放目录主要由编译器(如 GCC)的安装路径决定,通常分为以下两类:

1. C 标准头文件

C 语言的标准头文件(如 <stdio.h><stdlib.h> 等)默认存放在 ​系统公共头文件目录​:

复制代码
/usr/include

部分与 C 库(如 glibc)相关的扩展头文件可能存放在子目录中(例如 /usr/include/linux 是 Linux 内核头文件,但属于系统调用相关,非 C 标准)。

2. C++ 标准头文件

C++ 的标准头文件(如 <iostream><vector> 等)由 GCC 的 C++ 编译器(g++)提供,存放路径与 GCC 版本强相关。Ubuntu 20.04 默认安装的 GCC 版本为 ​9.x,因此 C++ 标准头文件的主要目录为:

复制代码
/usr/include/c++/9

若系统中安装了其他版本的 GCC(如通过 sudo apt install gcc-10 安装 GCC 10),则对应版本的头文件会存放在:

复制代码
/usr/include/c++/10  # 以 GCC 10 为例

如何验证头文件路径?​

可以通过编译器的 -v(详细模式)参数查看头文件搜索路径:

查看 C 头文件搜索路径

执行以下命令,输出中的 #include <...> search starts here: 部分会列出 C 标准头文件的搜索路径:

复制代码
gcc -v -E -x c /dev/null

典型输出片段:

复制代码
...
#include <...> search starts here:
 /usr/lib/gcc/x86_64-linux-gnu/9/include
 /usr/local/include
 /usr/include/x86_64-linux-gnu
 /usr/include
...
查看 C++ 头文件搜索路径

执行以下命令,输出中的 #include <...> search starts here: 部分会列出 C++ 标准头文件的搜索路径:

复制代码
g++ -v -E -x c++ /dev/null

典型输出片段:

复制代码
...
#include <...> search starts here:
 /usr/lib/gcc/x86_64-linux-gnu/9/include
 /usr/lib/gcc/x86_64-linux-gnu/9/include-fixed
 /usr/include/x86_64-linux-gnu
 /usr/include/c++/9
 /usr/include/c++/9/x86_64-linux-gnu
 /usr/include
...

总结

  • C 标准头文件 :主要在 /usr/include,部分依赖 GCC 运行时库的头文件可能在 /usr/lib/gcc/x86_64-linux-gnu/<版本>/include(如 /usr/lib/gcc/x86_64-linux-gnu/9/include)。
  • C++ 标准头文件 :主要在 /usr/include/c++/<GCC版本>(如 /usr/include/c++/9),同时包含版本相关的子目录(如 x86_64-linux-gnu)。

若需确认具体版本,可通过 g++ -v 查看当前默认 GCC 版本,或通过 ls /usr/include/c++ 列出所有已安装的 C++ 标准头文件版本目录。

惠州西湖

相关推荐
MMjeaty9 小时前
查找及其算法
c++·算法
yong158585534310 小时前
1. Linux C++ muduo 库学习——库的编译安装
linux·c++·学习
mit6.82411 小时前
回溯剪枝trick
c++
渡我白衣11 小时前
C++世界的混沌边界:undefined_behavior
java·开发语言·c++·人工智能·深度学习·语言模型
却道天凉_好个秋12 小时前
c++ 协程
c++
无敌最俊朗@13 小时前
视频时间基 (time_base) 详解:时间的“刻度单位”
c++
脏脏a13 小时前
【C++ 入门】:引用、内联函数与 C++11 新特性(auto、范围 for、nullptr)全解析
开发语言·c++
AA陈超14 小时前
虚幻引擎5 GAS开发俯视角RPG游戏 P06-28 构建属性菜单小部件控制器
c++·游戏·ue5·游戏引擎·虚幻
恒者走天下14 小时前
cpp / c++零基础就业学习一站式学习平台
开发语言·c++·学习
qq_4335545414 小时前
C++ 单调栈
数据结构·c++·算法