[C++] C語言及C++語言中包含的頭文件名稱,及做用

頭文件主目錄includehtml

頭文件目錄中總共有32個.h頭文件。其中主目錄下有13個,asm子目錄中有4個,linux子目錄中有10個,sys子目錄中有5個。這些頭文件各自的功能以下,具體的做用和所包含的信息請參見第14章。node

<a.out.h>:a.out頭文件,定義了a.out執行文件格式和一些宏。 
<const.h>:常數符號頭文件,目前僅定義了i節點中i_mode字段的各標誌位。 
<ctype.h>:字符類型頭文件,定義了一些有關字符類型判斷和轉換的宏。 
<errno.h>:錯誤號頭文件,包含系統中各類出錯號。(Linus從minix中引進的)。 
<fcntl.h>:文件控制頭文件,用於文件及其描述符的操做控制常數符號的定義。 
<signal.h>:信號頭文件,定義信號符號常量,信號結構以及信號操做函數原型。 
<stdarg.h>:標準參數頭文件,以宏的形式定義變量參數列表。主要說明了一個類型(va_list)和3個宏(va_start, va_arg和va_end),用於vsprintf、vprintf、vfprintf函數。 
<stddef.h>:標準定義頭文件,定義了NULL, offsetof(TYPE, MEMBER)。 
<string.h>:字符串頭文件,主要定義了一些有關字符串操做的嵌入函數。 
<termios.h>:終端輸入輸出函數頭文件,主要定義控制異步通訊口的終端接口。 
<time.h>:時間類型頭文件,主要定義了tm結構和一些有關時間的函數原形。 
<unistd.h>:Linux標準頭文件,定義了各類符號常數和類型,並聲明瞭各類函數。如,定義了__LIBRARY__,則還包括系統調用號和內嵌彙編_syscall0()等。 
<utime.h>:用戶時間頭文件,定義了訪問和修改時間結構以及utime()原型。
linux

(1)體系結構相關頭文件子目錄include/asmios

這些頭文件主要定義了一些與CPU體系結構密切相關的數據結構、宏函數和變量。共4個文件。正則表達式

<asm/io.h>:I/O頭文件,以宏的嵌入彙編程序形式定義對I/O端口操做的函數。 
<asm/memory.h>:內存拷貝頭文件,含有memcpy()嵌入式彙編宏函數。 
<asm/segment.h>:段操做頭文件,定義了有關段寄存器操做的嵌入式彙編函數。 
<asm/system.h>:系統頭文件,定義了設置或修改描述符/中斷門等的嵌入式彙編宏。
算法

(2)Linux內核專用頭文件子目錄include/linux數據庫

<linux/config.h>:內核配置頭文件,定義鍵盤語言和硬盤類型(HD_TYPE)可選項。 
<linux/fdreg.h>:軟驅頭文件,含有軟盤控制器參數的一些定義。 
<linux/fs.h>:文件系統頭文件,定義文件表結構(file,buffer_head,m_inode等)。
<linux/hdreg.h>:硬盤參數頭文件,定義訪問硬盤寄存器端口、狀態碼和分區表等信息。 
<linux/head.h>:head頭文件,定義了段描述符的簡單結構,和幾個選擇符常量。 
<linux/kernel.h>:內核頭文件,含有一些內核經常使用函數的原形定義。 
<linux/mm.h>:內存管理頭文件,含有頁面大小定義和一些頁面釋放函數原型。 
<linux/sched.h>: 調度程序頭文件,定義了任務結構task_struct、初始任務0的數據, 
以及一些有關描述符參數設置和獲取的嵌入式彙編函數宏語句。 
<linux/sys.h>:系統調用頭文件,含有72個系統調用C函數處理程序,以"sys_"開頭。 
<linux/tty.h>:tty頭文件,定義了有關tty_io,串行通訊方面的參數、常數。
編程

(3)系統專用數據結構子目錄include/sys數組

<sys/stat.h>: 文件狀態頭文件,含有文件或文件系統狀態結構stat{}和常量。 
<sys/times.h>:定義了進程中運行時間結構tms以及times()函數原型。 
<sys/types.h>:類型頭文件,定義了基本的系統數據類型。 
<sys/utsname.h>:系統名稱結構頭文件。 
<sys/wait.h>:等待調用頭文件,定義系統調用wait()和waitpid()及相關常數符號。
網絡

 

linux經常使用頭文件以下:

  POSIX標準定義的頭文件

  <dirent.h>        目錄項

  <fcntl.h>         文件控制

  <fnmatch.h>    文件名匹配類型

  <glob.h>    路徑名模式匹配類型

  <grp.h>        組文件

  <netdb.h>    網絡數據庫操做

  <pwd.h>        口令文件

  <regex.h>    正則表達式

  <tar.h>        TAR歸檔值

  <termios.h>    終端I/O

  <unistd.h>    符號常量

  <utime.h>    文件時間

  <wordexp.h>    字符擴展類型

  -------------------------

  <arpa/inet.h>    INTERNET定義

  <net/if.h>    套接字本地接口

  <netinet/in.h>    INTERNET地址族

  <netinet/tcp.h>    傳輸控制協議定義

  -------------------------

  <sys/mman.h>    內存管理聲明

  <sys/select.h>    Select函數

  <sys/socket.h>    套接字藉口

  <sys/stat.h>    文件狀態

  <sys/times.h>    進程時間

  <sys/types.h>    基本系統數據類型

  <sys/un.h>    UNIX域套接字定義

  <sys/utsname.h>    系統名

  <sys/wait.h>    進程控制

  ------------------------------

  POSIX定義的XSI擴展頭文件

  <cpio.h>    cpio歸檔值

  <dlfcn.h>    動態連接

  <fmtmsg.h>    消息顯示結構

  <ftw.h>        文件樹漫遊

  <iconv.h>    代碼集轉換使用程序

  <langinfo.h>    語言信息常量

  <libgen.h>    模式匹配函數定義

  <monetary.h>    貨幣類型

  <ndbm.h>    數據庫操做

  <nl_types.h>    消息類別

  <poll.h>    輪詢函數

  <search.h>    搜索表

  <strings.h>    字符串操做

  <syslog.h>    系統出錯日誌記錄

  <ucontext.h>    用戶上下文

  <ulimit.h>    用戶限制

  <utmpx.h>    用戶賬戶數據庫

  -----------------------------

  <sys/ipc.h>    IPC(命名管道)

  <sys/msg.h>    消息隊列

  <sys/resource.h>資源操做

  <sys/sem.h>    信號量

  <sys/shm.h>    共享存儲

  <sys/statvfs.h>    文件系統信息

  <sys/time.h>    時間類型

  <sys/timeb.h>    附加的日期和時間定義

  <sys/uio.h>    矢量I/O操做

  ------------------------------

  POSIX定義的可選頭文件

  <aio.h>        異步I/O

  <mqueue.h>    消息隊列

  <pthread.h>    線程

  <sched.h>    執行調度

  <semaphore.h>    信號量

  <spawn.h>     實時spawn接口

  <stropts.h>    XSI STREAMS接口

  <trace.h>     事件跟蹤

 三、 C/C++頭文件一覽

  C

  #i nclude <assert.h>    //設定插入點

  #i nclude <ctype.h>     //字符處理

  #i nclude <errno.h>     //定義錯誤碼

  #i nclude <float.h>     //浮點數處理

  #i nclude <iso646.h>        //對應各類運算符的宏

  #i nclude <limits.h>    //定義各類數據類型最值的常量

  #i nclude <locale.h>    //定義本地化C函數

  #i nclude <math.h>     //定義數學函數

  #i nclude <setjmp.h>        //異常處理支持

  #i nclude <signal.h>        //信號機制支持

  #i nclude <stdarg.h>        //不定參數列表支持

  #i nclude <stddef.h>        //經常使用常量

  #i nclude <stdio.h>     //定義輸入/輸出函數

  #i nclude <stdlib.h>    //定義雜項函數及內存分配函數

  #i nclude <string.h>    //字符串處理

  #i nclude <time.h>     //定義關於時間的函數

  #i nclude <wchar.h>     //寬字符處理及輸入/輸出

  #i nclude <wctype.h>    //寬字符分類

  傳統C++

  #i nclude <fstream.h>    //改用<fstream>

  #i nclude <iomanip.h>    //改用<iomainip>

  #i nclude <iostream.h>   //改用<iostream>

  #i nclude <strstrea.h>   //該類再也不支持,改用<sstream>中的stringstream

  ————————————————————————————————

  標準C++

  #i nclude <algorithm>    //STL 通用算法

  #i nclude <bitset>     //STL 位集容器

  #i nclude <cctype>          //字符處理

  #i nclude <cerrno>      //定義錯誤碼

  #i nclude <cfloat>     //浮點數處理

  #i nclude <ciso646>         //對應各類運算符的宏

  #i nclude <climits>     //定義各類數據類型最值的常量

  #i nclude <clocale>     //定義本地化函數

  #i nclude <cmath>      //定義數學函數

  #i nclude <complex>     //複數類

  #i nclude <csignal>         //信號機制支持

  #i nclude <csetjmp>         //異常處理支持

  #i nclude <cstdarg>         //不定參數列表支持

  #i nclude <cstddef>         //經常使用常量

  #i nclude <cstdio>      //定義輸入/輸出函數

  #i nclude <cstdlib>     //定義雜項函數及內存分配函數

  #i nclude <cstring>     //字符串處理

  #i nclude <ctime>      //定義關於時間的函數

  #i nclude <cwchar>      //寬字符處理及輸入/輸出

  #i nclude <cwctype>     //寬字符分類

  #i nclude <deque>      //STL 雙端隊列容器

  #i nclude <exception>    //異常處理類

  #i nclude <fstream>     //文件輸入/輸出

  #i nclude <al>   //STL 定義運算函數(代替運算符)

  #i nclude <limits>      //定義各類數據類型最值常量

  #i nclude <list>      //STL 線性列表容器

  #i nclude <locale>          //本地化特定信息

  #i nclude <map>       //STL 映射容器

  #i nclude <memory>          //STL經過分配器進行的內存分配

  #i nclude <new>             //動態內存分配

  #i nclude <numeric>         //STL經常使用的數字操做

  #i nclude <iomanip>     //參數化輸入/輸出

  #i nclude <ios>       //基本輸入/輸出支持

  #i nclude <iosfwd>     //輸入/輸出系統使用的前置聲明

  #i nclude <iostream>     //數據流輸入/輸出

  #i nclude <istream>     //基本輸入流

  #i nclude <iterator>        //STL迭代器

  #i nclude <ostream>     //基本輸出流

  #i nclude <queue>      //STL 隊列容器

  #i nclude <set>       //STL 集合容器

  #i nclude <sstream>     //基於字符串的流

  #i nclude <stack>      //STL 堆棧容器

  #i nclude <stdexcept>    //標準異常類

  #i nclude <streambuf>    //底層輸入/輸出支持

  #i nclude <string>     //字符串類

  #i nclude <typeinfo>        //運行期間類型信息

  #i nclude <utility>     //STL 通用模板類

  #i nclude <valarray>        //對包含值的數組的操做

  #i nclude <vector>     //STL 動態數組容器

  ————————————————————————————————

  C99增長的部分

  #i nclude <complex.h>   //複數處理

  #i nclude <fenv.h>    //浮點環境

  #i nclude <inttypes.h>  //整數格式轉換

  #i nclude <stdbool.h>   //布爾環境

  #i nclude <stdint.h>   //整型環境

  #i nclude <tgmath.h>   //通用類型數學宏

相關文章
相關標籤/搜索