为什么/usr/include/linux/stddef.h为空?
这个头文件应该定义NULL或者size_t等宏,但是我发现/usr/include/ linux/stddef.h是空的?为什么? 解决方法标头的实际位置是实现定义的.你看的不是典型的< stddef.h>由gcc包含您可以通过以下方式找出系统所在的位置:gcc -E - <<<'#include<stddef.h>' | grep stddef.h 这相当于包括标题< stddef.h>在一个空的C文件中并运行gcc -E. /usr/include / linux中的标头用于编译C库(通常是Linux上的glibc). GNU manual说:
而C库头文件通常位于/usr/lib /中的某个位置.在我的ubuntu 15.04上,头文件/usr/include/linux/stddef.h为空.但是在我的CentOS上,它有: #ifndef _LINUX_STDDEF_H #define _LINUX_STDDEF_H #undef NULL #if defined(__cplusplus) #define NULL 0 #else #define NULL ((void *)0) #endif #endif 底线是,这不是你感兴趣的stddef.h,一般来说,你不应该对标准头文件的位置做任何假设. (编辑:莱芜站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 搜索 – 在所有VI缓冲区中查找/查找
- linux – 我工作的地方每个人都以root身份登录
- linux备份数据库
- Fast portable non-blocking network programming with Lib
- 如何在Linux Ubuntu 16上安装luasql?
- linux – pthreads线程在堆栈中预先故障的最佳方法是什么?
- C/C++裸机编译和特定操作系统(Linux)编译之间有什么区别?
- chmod以数字形式改变文件权限
- linux – 将给定文件的第一个字母转换为小写
- 15 Linux Split and Join Command Examples to Manage Larg