Linux學習:unix的標準化的實現(Linux中各種限制-數據類型-各種標準化頭文件介紹)

作為Linux的前身,unix標準化是十分重要的。我在這里挑幾個重要的點說明。

1:Linux中各種限制。

Linux中限制有編譯時限制和運行時限制,另外有一些限制是由于我們的實現不同而不同,因此我們需要調用對應的函數獲取對應的值不同。(eg:編譯時限制:整形最大值是什么。
運行時限制:文件名可以有多少個字符)
對應的我們可以調用對應的內容獲取其限制值:
        (1)編譯時限制 --->頭文件。
        (2)不是與文件或目錄相關的運行時限制--->sysconf函數
        (3)與文件或目錄相關的運行時限制---->pathconf或fpathconf
    
在ISO C中定義的限制都是編譯時限制,在Linux limits.h文件中定義了C標準限制。在float.h中定義了對于浮點數的各種限制。如下圖時ISO C在limint.h頭文件中的各種限制值。
file
POSIX定義了許多系統(tǒng)實現的限制,這些限制被分成了5類。
        (1)不變的最小值,下圖中的19個常量。
        (2)不變值:SSIZE_MAX。
        (3)運行時可以增加的值:
        (4)運行時不變的值。
        (5)路徑名可變值。
file
    等等,這些我就不做過多介紹了,因為介紹這么多恐怕我們也記不住。在日后shi實際使用過程中逐一介紹。
    
實例:
下面獲取兩個限制的值,
#include <unistd.h>
#include <limit.h>
#include <stdio.h>

int main()
{
        printf("%lu\n", sysconf(_SC_LINE_MAX));
        printf("%lu\n", pathconf(".", _PC_LINK_MAX));
}
來個小總結:關于限制獲取這塊,我們就講這么多。我們主要是使用這些限制的值,獲取方法有兩種,頭文件、庫函數。

2:這部分我們主要將定義的各種數據類型,主要介紹基本的數據類型。如下圖所示


file

這些數據類型是我在一本書上截取下來的,日后如果使用到這種數據類型的時候會逐一的詳細介紹。
還有一些其他的數據類型:int double long float char short 等,這里就不在這里逐一介紹了。

3:我介紹一下ISO C的各種頭文件,至于其他頭文件就不逐一列出了。

assert.h:驗證程序某些判斷是否正確。如下是一個實驗。
file

輸出結果


file
limit.h各種限制。
time.h獲取時間的各種函數。
string.h:字符串操作函數集。
stdlib.h:實用程序函數。
signal.h:信號相關內容。
wchar.h:寬字符相關的內容。
至于其他的我就直接列出即可,作為了解
file
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容