溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Unix高級環(huán)境編程筆記-2--基本系統(tǒng)數(shù)據(jù)類型

發(fā)布時間:2020-07-23 18:38:31 來源:網(wǎng)絡(luò) 閱讀:389 作者:quan333 欄目:系統(tǒng)運維

本文內(nèi)容摘自《Unix高級環(huán)境編程》第二版,如有錯誤,請指明,謝謝!

同時本文參考FreeBSD的sys/types.h文件對基本系統(tǒng)數(shù)據(jù)類型作進(jìn)一步了解。


Unix系統(tǒng)的sys/types.h文件定義了某些與實現(xiàn)相關(guān)的數(shù)據(jù)類型,稱為基本系統(tǒng)數(shù)據(jù)類型(primitive system data type)。這些數(shù)據(jù)類型都是用C的typedef來定義,并且都是大多數(shù)都是以_t結(jié)尾的。下面將列出部分基本系統(tǒng)數(shù)據(jù)類型。


數(shù)據(jù)類型  說明                FreeBSD中定義說明

caddr_t    核心地址              定義為 char * 類型

clock_t    時鐘滴答計數(shù)器        定義為 __clock_t,每秒鐘的時間滴答數(shù)為 CLOCKS_PER_SEC(FreeBSD中,此定義在time.h)

comp_t     壓縮的時鐘滴答數(shù)      定義在 sys/acct.h中,為 uint16_t

dev_t      設(shè)備號(主和次)      定義為 __dev_t,設(shè)備號或 struct cdev

fd_set     文件描述符集          定義在 sys/select.h 中,為 struct fd_set,可參考 select 系統(tǒng)調(diào)用。

fpos_t     文件位置              定義在 stdio.h 中,為 __off_t 類型

gid_t      用戶組ID              定義為 __gid_t 類型

ino_t      i節(jié)點編號             定義為 __ino_t 類型

mode_t     文件類型,文件創(chuàng)建模式  定義為 __mode_t 類型

nlink_t    目錄項的連接計數(shù)器    定義為 __nlink_t 類型

off_t      文件大小和偏移量,帶符號  定義為 __off_t 類型,還定義 uoff_t(__uint64_t),表示無符號

pid_t      進(jìn)程IP和進(jìn)程組ID      定義為 __pid_t 類型

ptrdirr_t  兩指針相減的結(jié)果      定義在 sys/stddef.h 中,定義為 __ptrdiff_t 類型

rlim_t     資源限制              定義為 __rlim_t 類型

sig_atomic_t  能原子訪問的數(shù)據(jù)類型   與CPU架構(gòu)相關(guān),對i386,定義在 i386/include/signal.h 中

sigset_t   信號集                定義在 sys/select.h 和 sys/signal.h 中,均為 __sigset_t

size_t     對象字節(jié)數(shù)大小,不帶符號    定義為 __size_t 類型

ssize_t    函數(shù)返回字節(jié)數(shù)大小,帶符號  定義為 __ssize_t 類型

time_t     日歷時間的計時器      定義為 __time_t 類型,與CPU架構(gòu)相關(guān)

uid_t      數(shù)值用戶ID            定義為 __uid_t 類型

wchar_t    能表示所有不同的字符碼   在 stddef.h stdlib.h wchar.h 中均有定義,定義為 __wchar_t,而__wchar_t 定義在 sys/_types.h 中,定義為 __ct_rune_t,而 __ct_rune_t 定義為 int


在FreeBSD中,以上基本系統(tǒng)數(shù)據(jù)類型中,__XXX_t 基本上與CPU架構(gòu)有關(guān),如 i386,則定義在 i386/include/_types.h 中,但并非所有的 __XXX_t 類型都是這樣,如 __wchar_t 就不是。





向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI