*代表指針,FILE代表是一個文件類型,stream是參數名稱。
創新互聯建站從2013年成立,先為昌邑等服務建站,昌邑等地企業,進行企業商務咨詢服務。為昌邑企業網站制作PC+手機+微官網三網同步一站式服務解決您的所有建站問題。
FILE * stream表示的是一個叫stream的參數,他是一個指針,并且這個指針指向FILE(文件)類型。
char * format表示的是一個叫format的參數指向char(字符)類型的指針。
一般寫法都是: 函數類型 函數名稱;
[argument]代表參數可選,就是可以繼續增加參數。
這個其實很好理解
只需要把%s,%c,%p放在一起看
首先%s是最常見的很好理解,就是告訴程序后面的變量是一個字符串,在C語言中也就是字符數組,類型是char*或者char[],換句話說,你告訴程序我會給你一個指針,你去讀這個指針指向的值。
然后%c是告訴程序后面的變量是個字符,類型是char,差別已經很明顯了,這時候你告訴程序我給你提供一個字符,你給我在%c處打印出來。然而你給的卻是一個指針,那程序就直接把你給的指針指向的地址本身當成字符打印出來了。但是一個地址肯定不止一個字節,也就是說超過了char應該有的大小,這時候程序會直接忽略了超出大小的部分,只讀第一個字節。
如果你同時使用%p,告訴程序,你會提供一個指針,直接把這個指針指向的地址給我打印出來。把輸出的地址最后兩位的16進制數查ascii表,換算成字符,你會發現,剛好就是前面%c打印出的字符。
就是調用函數是傳入的參數,const char* 表示常量字符串,比如“hello world”,雙指針表示指針的指針,可以用來在調用函數中開辟空間