linux非标准头文件,Linux学习:unix的标准化的实现(Linux中各种限制-数据类型-各种标准化头文件介绍)...
作為L(zhǎng)inux的前身,unix標(biāo)準(zhǔn)化是十分重要的。我在這里挑幾個(gè)重要的點(diǎn)說(shuō)明。
1:Linux中各種限制。Linux中限制有編譯時(shí)限制和運(yùn)行時(shí)限制,另外有一些限制是由于我們的實(shí)現(xiàn)不同而不同,因此我們需要調(diào)用對(duì)應(yīng)的函數(shù)獲取對(duì)應(yīng)的值不同。(eg:編譯時(shí)限制:整形最大值是什么。
運(yùn)行時(shí)限制:文件名可以有多少個(gè)字符)
對(duì)應(yīng)的我們可以調(diào)用對(duì)應(yīng)的內(nèi)容獲取其限制值:
(1)編譯時(shí)限制 --->頭文件。
(2)不是與文件或目錄相關(guān)的運(yùn)行時(shí)限制--->sysconf函數(shù)
(3)與文件或目錄相關(guān)的運(yùn)行時(shí)限制---->pathconf或fpathconf
在ISO C中定義的限制都是編譯時(shí)限制,在Linux limits.h文件中定義了C標(biāo)準(zhǔn)限制。在float.h中定義了對(duì)于浮點(diǎn)數(shù)的各種限制。如下圖時(shí)ISO C在limint.h頭文件中的各種限制值。
POSIX定義了許多系統(tǒng)實(shí)現(xiàn)的限制,這些限制被分成了5類。
(1)不變的最小值,下圖中的19個(gè)常量。
(2)不變值:SSIZE_MAX。
(3)運(yùn)行時(shí)可以增加的值:
(4)運(yùn)行時(shí)不變的值。
(5)路徑名可變值。
等等,這些我就不做過(guò)多介紹了,因?yàn)榻榻B這么多恐怕我們也記不住。在日后shi實(shí)際使用過(guò)程中逐一介紹。
實(shí)例:
下面獲取兩個(gè)限制的值,
#include
#include
#include
int main()
{
printf("%lu\n", sysconf(_SC_LINE_MAX));
printf("%lu\n", pathconf(".", _PC_LINK_MAX));
}
來(lái)個(gè)小總結(jié):關(guān)于限制獲取這塊,我們就講這么多。我們主要是使用這些限制的值,獲取方法有兩種,頭文件、庫(kù)函數(shù)。
2:這部分我們主要將定義的各種數(shù)據(jù)類型,主要介紹基本的數(shù)據(jù)類型。如下圖所示
這些數(shù)據(jù)類型是我在一本書上截取下來(lái)的,日后如果使用到這種數(shù)據(jù)類型的時(shí)候會(huì)逐一的詳細(xì)介紹。還有一些其他的數(shù)據(jù)類型:int double long float char short 等,這里就不在這里逐一介紹了。
3:我介紹一下ISO C的各種頭文件,至于其他頭文件就不逐一列出了。assert.h:驗(yàn)證程序某些判斷是否正確。如下是一個(gè)實(shí)驗(yàn)。
輸出結(jié)果
limit.h各種限制。
time.h獲取時(shí)間的各種函數(shù)。
string.h:字符串操作函數(shù)集。
stdlib.h:實(shí)用程序函數(shù)。
signal.h:信號(hào)相關(guān)內(nèi)容。
wchar.h:寬字符相關(guān)的內(nèi)容。
至于其他的我就直接列出即可,作為了解
本文由博客群發(fā)一文多發(fā)等運(yùn)營(yíng)工具平臺(tái) OpenWrite 發(fā)布
總結(jié)
以上是生活随笔為你收集整理的linux非标准头文件,Linux学习:unix的标准化的实现(Linux中各种限制-数据类型-各种标准化头文件介绍)...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 小鱼做法大全家常做法?
- 下一篇: linux中的码字软件,码字写作软件下载