几个书本上不常见到的C语言函数
生活随笔
收集整理的這篇文章主要介紹了
几个书本上不常见到的C语言函数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
函數名稱:getcwd #include <unistd.h> char *getcwd(char *buf, size_t size); 作用:把當前目錄的絕對地址保存到 buf 中,buf 的大小為 size。如果 size太小無法保存該地址,返回 NULL 并設置 errno 為 ERANGE??梢圆扇×?buf 為 NULL并使 size 為負值來使 getcwd 調用 malloc 動態給 buf 分配,但是這種情況要特別注意使用后釋放緩沖以防止內存泄漏。 程序例如果在程序運行的過程中,目錄被刪除(EINVAL錯誤)或者有關權限發生了變化(EACCESS錯誤),getcwd也可能會返回NULL。 函數名:?getenv 功 能:?從環境中取字符串,獲取環境變量的值 頭文件:?stdlib.h 用 法:char *getenv(char *envvar); 函數說明:getenv()用來取得參數envvar環境變量的內容。參數envvar為環境變量的名稱,如果該變量存在則會返回指向該內容的指針。環境變量的格式為envvar=value。getenv函數的返回值存儲在一個全局二維數組里,當你再次使用getenv函數時不用擔心會覆蓋上次的調用結果。 返回值:?執行成功則返回指向該內容的指針,找不到符合的環境變量名稱則返回NULL。如果變量存在但無關聯值,它將運行成功并返回一個空字符串,即該字符的第一個字節是null。 函數名:strchr 函數原型:extern char *strchr(char *str,char character)
參數說明:str為一個字符串的指針,character為一個待查找字符
? ? ? ??
?
所在庫名:#include <string.h>
??
?
函數功能:從字符串str中尋找字符character第一次出現的位置。
??
?
返回說明:返回指向第一次出現字符character位置的指針,如果沒找到則返回NULL。
?
其它說明:還有一種格式char *strchr( const char *string, int?c?),這里字符串是以int型給出的。
?
?
?
?
函數名:read() 定義函數 ssize_t read[1]?(int fd, void *buf, size_t count) 返回值 成功返回讀取的字節數,出錯返回-1并設置errno,如果在調read之前已到達文件末尾,則這次read返回0 參數 參數count是請求讀取的字節數,讀上來的數據保存在緩沖區buf中,同時文件的當前讀寫位置向后移。注意這個讀寫位置和使用C標準I/O庫時的讀寫位置有可能不同,這個讀寫位置是記在內核中的,而使用C標準I/O庫時的讀寫位置是用戶空間I/O緩沖區中的位置。比如用fgetc讀一個字節,fgetc有可能從內核中預讀1024個字節到I/O緩沖區中,再返回第一個字節,這時該文件在內核中記錄的讀寫位置是1024,而在FILE結構體中記錄的讀寫位置是1。注意返回值類型是ssize_t,表示有符號的size_t,這樣既可以返回正的字節數、0(表示到達文件末尾)也可以返回負值-1(表示出錯)。 read函數返回時,返回值說明了buf中前多少個字節是剛讀上來的。有些情況下,實際讀到的字節數(返回值)會小于請求讀的字節數count,例如:讀常規文件時,在讀到count個字節之前已到達文件末尾。例如,距文件末尾還有30個字節而請求讀100個字節,則read返回30,下次read將返回0。 相關函數 open,close,lseek,fread,轉載于:https://www.cnblogs.com/sexybear/p/4496050.html
總結
以上是生活随笔為你收集整理的几个书本上不常见到的C语言函数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: http://www.himigame.
- 下一篇: Eclipse+Tomcat7.0+My