1. 程式人生 > >linux下的標頭檔案 及C/C++標頭檔案 一覽表

linux下的標頭檔案 及C/C++標頭檔案 一覽表

linux下程式設計常用標頭檔案一覽
==============================================================================================
<assert.h >         驗證程式斷言
<cpio.h >           cpio
歸檔值
<ctype.h >          
字元型別
<dirent.h >        
目錄項
<errno.h >          
出錯碼
<fcntl.h >          

檔案控制
<float.h >          
浮點常數
<signal.h >        
訊號
<stdarg.h >        
可變引數表
<stddef.h >        
標準定義
<stdio.h >          
標準I/O
<stdlib.h >        
公用函式
<string.h >        
字串操作
<tar.h >             tar
歸檔值
<termios.h >        
終端I/O  
<time.h >          
時間和日期
<ulimit.h >        
使用者限制
<unistd.h >        
符號常數
<utime.h >          
檔案時間
<sys/ipc.h >         IPC  
<sys/msg.h >        
訊息佇列
<sys/sem.h >        
訊號量
<sys/shm.h >        
共享儲存
<sys/stat.h >      
檔案狀態
<sys/times.h >      
程序時間
<sys/types.h >      
原系統資料型別
<sys/wait.h >      
程序控制

C/C++標頭檔案一覽
=============================================================================================

C、傳統 C++

#include <assert.h>
//設定插入點
#include <ctype.h>
//字元處理
#include <errno.h>
//定義錯誤碼
#include <float.h>
//浮點數處理
#include <fstream.h>
//檔案輸入/輸出
#include <iomanip.h>
//引數化輸入/輸出
#include <iostream.h>
//資料流輸入/輸出
#include <limits.h>
//定義各種資料型別最值常量
#include <locale.h>
//定義本地化函式
#include <math.h>
//定義數學函式
#include <stdio.h>
//定義輸入/輸出函式
#include <stdlib.h>
//定義雜項函式及記憶體分配函式
#include <string.h>
//字串處理
#include <strstrea.h>
//基於陣列的輸入/輸出
#include <time.h>
//定義關於時間的函式
#include <wchar.h>
//寬字元處理及輸入/輸出
#include <wctype.h>
//寬字元分類

//////////////////////////////////////////////////////////////////////////

標準 C++ (同上的不再註釋)

#include <algorithm>
//STL 通用演算法
#include <bitset>
//STL 位集容器
#include <cctype>
#include <cerrno>
#include <clocale>
#include <cmath>
#include <complex>
//複數類
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <ctime>
#include <deque>
//STL 雙端佇列容器
#include <exception>
//異常處理類
#include <fstream>
#include <functional>
//STL 定義運算函式(代替運算子)
#include <limits>
#include <list>
//STL 線性列表容器
#include <map>
//STL 對映容器
#include <iomanip>
#include <ios>
//基本輸入/輸出支援
#include <iosfwd>
//輸入/輸出系統使用的前置宣告
#include <iostream>
#include <istream>
//基本輸入流
#include <ostream>
//基本輸出流
#include <queue>
//STL 佇列容器
#include <set>
//STL 集合容器
#include <sstream>
//基於字串的流
#include <stack>
//STL 堆疊容器    
#include <stdexcept>
//標準異常類
#include <streambuf>
//底層輸入/輸出支援
#include <string>
//字串類
#include <utility>
//STL 通用模板類
#include <vector>
//STL 動態陣列容器
#include <cwchar>
#include <cwctype>

using namespace std;

//////////////////////////////////////////////////////////////////////////

C99
增加

#include <complex.h>
//複數處理
#include <fenv.h>
//浮點環境
#include <inttypes.h>
//整數格式轉換
#include <stdbool.h>
//布林環境
#include <stdint.h>
//整型環境
#include <tgmath.h>
//通用型別數學巨集

/////////////////////////////////////////////////////////////////////////////////

socket程式設計時常要用到:
sys/types.h
:資料型別定義
sys/socket.h
:提供socket函式及資料結構
netinet/in.h
:定義資料結構sockaddr_in
arpa/inet.h
:提供IP地址轉換函式
netdb.h
:提供設定及獲取域名的函式
sys/ioctl.h
:提供對I/O控制的函式
sys/poll.h
:提供socket等待測試機制的函式其他在網路程式中常見的標頭檔案
unistd.h
:提供通用的檔案、目錄、程式及程序操作的函式
errno.h
:提供錯誤號errno的定義,用於錯誤處理
fcntl.h
:提供對檔案控制的函式
time.h
:提供有關時間的函式
crypt.h
:提供使用DES加密演算法的加密函式
pwd.h
:提供對/etc/passwd檔案訪問的函式
shadow.h
:提供對/etc/shadow檔案訪問的函式
pthread.h
:提供多執行緒操作的函式
signal.h
:提供對訊號操作的函式
sys/wait.h
sys/ipc.hsys/shm.h:提供程序等待、程序間通訊(IPC)及共享記憶體的函式

想知道一個函式需要包含哪些標頭檔案,需要連線哪些庫,可以用man看一下 $> man  function_name

比如
man   2   socket

告訴你需要包含:
              #include   <sys/types.h>
              #include   <sys/socket.h>

man   sin:

              #include   <math.h>
              Link   with   -lm.

有幾種方法可以定位一個檔案:
locate   xxxx
whereis   xxxx
find   /usr/include   -name   "xxxx "

不過你的那個檔案有可能不是標準的系統帶的標頭檔案,可能是書中自己寫的標頭檔案