Linux下C庫學習 limits h

2021-07-25 23:43:15 字數 1762 閱讀 9883

和float.h相比較limits.h主要對整形數和字元型資料的的邊界做了一些限制,標頭檔案的內容很簡單,不過他的作用很大,可以讓你的程式在不同環境下都可以正常執行,比如,int型別有可能是16位,32位甚至64位,假如你在int型別佔16位的機器上想使用int型別的最大值,如果沒有limit.h那你只能寫乙個數值65535,但是如果你的程式在32位的機器上或者64位的機器上跑,程式可能就會有問題,而limits.h就解決了這個問題,如果你想使用int型別的最大值,只需要用int_max這個巨集就可以了,這樣,在任何符合標準的機器上,你的程式都不會有問題。

limits.h中的巨集定義很簡單,大概有下面這些

char_bit表示char型別所佔的位數

char_min表示char的最小值

char_max表示char的最大值

schar_min表示signed char的最小值

schar_max表示signed char的最大值

uchar_max表示unsigned char的最大值

shrt_min表示short的最小值

shrt_max表示short的最大值

ushrt_max表示unsigned short的最大值

int_min表示int的最小值

int_max表示int的最大值

uint_max表示unsigned int的最大值

long_max表示long的最大值

long_min表示long的最小值

ulong_max表示unsigned long的最大值

llong_min表示long long的最小值

llong_max表示long long的最大值

ullong_max表示unsigned long long的最大值

這個標頭檔案的內容不太多,主要就是為了移植做了一些限制,如果你想在程式中使用這些邊界值的話,一定要使用系統定義的巨集,否則在不同平台使用的時候,可能會有一些莫名其妙的錯誤。

Linux下C庫學習 math h

眾所周知,如果你想使用一些數學函式,那麼就需要包含math.h,這裡面基本包含了所有常用的數學函式 sin,cos,tan 以及數學常量 pi 等等,既然c庫裡面開發好了,那我們就看看到底裡面都有什麼。既然是數學函式庫,首先我們就需要對運算元進行限制,比如0不能作為除數,對負數開方,對負數求對數等等...

Linux下C庫學習 string h

string.h中包含了我們平常所用的所有字元處理函式,除此以外還有記憶體管理函式 void memchr const void s,int c,size t n 在某一記憶體範圍中查詢一特定字元 intmemcmp const void s1,const void s2,size t n 比較記憶...

Linux下C 動態庫

本人是剛畢業的大學生一枚,這是寫的第一篇部落格,若有不對的地方,懇請指正!由於工作原因,不得已在linux下開發專案,而且還是用c 對於c 本人是有一些白痴的。專案完成,在此做一下總結,給自己乙個交代。首先先對動態庫方面的只是做乙個總結 1 動態庫的簡單介紹 首先,動態庫就是動態鏈結庫,本人有些懶,...