2012軟考程序員輔導(dǎo):常用C函數(shù)

字號:

fgets():從流中讀一行或指定個字符, 原型是char *fgets(char *s, int n, FILE *stream); 從流中讀取n-1個字符,除非讀完一行,參數(shù)s是來接收字符串,如果成功則返回s的指針,否則返回NULL.形參注釋:*s結(jié)果數(shù)據(jù)的首地址;n-1:一次讀入數(shù)據(jù)塊的長度,其默認(rèn)值為1k,即1024;stream文件指針
    --------------------------------------------------------------------------------
    sizeof sizeof(……)是運(yùn)算符,在頭文件中typedef為unsigned int,其值在編譯時(shí)即計(jì)算好了,參數(shù)可以是數(shù)組、指針、類型、對象、函數(shù)等。
    它的功能是:獲得保證能容納實(shí)現(xiàn)所建立的對象的字節(jié)大小。
    由于在編譯時(shí)計(jì)算,因此sizeof不能用來返回動態(tài)分配的內(nèi)存空間的大小。實(shí)際上,用sizeof來返回類型以及靜態(tài)分配的對象、結(jié)構(gòu)或數(shù)組所占的空間,返回值跟對象、結(jié)構(gòu)、數(shù)組所存儲的內(nèi)容沒有關(guān)系。
    具體而言,當(dāng)參數(shù)分別如下時(shí),sizeof返回的值表示的含義如下:數(shù)組--編譯時(shí)分配的數(shù)組空間大??;指針--存儲該指針?biāo)玫目臻g大小(存儲該指針的地址的長度,是長整型,應(yīng)該為4);類型--該類型所占的空間大小;對象--對象的實(shí)際占用空間大?。缓瘮?shù)--函數(shù)的返回類型所占的空間大小。函數(shù)的返回類型不能是void. ************** strlen strlen(……)是函數(shù),要在運(yùn)行時(shí)才能計(jì)算。參數(shù)必須是字符型指針(char*)。當(dāng)數(shù)組名作為參數(shù)傳入時(shí),實(shí)際上數(shù)組就退化成指針了。
    它的功能是:返回字符串的長度。該字符串可能是自己定義的,也可能是內(nèi)存中隨機(jī)的,該函數(shù)實(shí)際完成的功能是從代表該字符串的第一個地址開始遍歷,直到遇到結(jié)束符NULL。返回的長度大小不包括NULL。