用fwrite函數如何實現換行?
直接輸入"\r\n"即可。 fwrite是C語言函數,指向文件寫入一個數據塊。 功能:C語言函數,向文件寫入一個數據塊 用法: size_tfwrite(constvoid*buffer,size_tsize,size_tcount,FILE*stream); 注意:這個函數以二進制形式對文件進行操作,不局限于文本文件 返回值:返回實際寫入的數據塊數目 (1)buffer:是一個指針,對fwrite來說,是要獲取數據的地址; (2)size:要寫入內容的單字節數; (3)count:要進行寫入size字節的數據項的個數; (4)stream:目標文件指針; (5)返回實際寫入的數據項個數count。 說明:寫入到文件的哪里?這個與文件的打開模式有關,如果是w+,則是從filepointer指向的地址開始寫,替換掉之后的內容,文件的長度可以不變,stream的位置移動count個數;如果是a+,則從文件的末尾開始添加,文件長度加大。 fseek對此函數有作用,但是fwrite[1]函數寫到用戶空間緩沖區,并未同步到文件中,所以修改后要將內存與文件同步可以用fflush(FILE*fp)函數同步。 程序示例: #include<stdio.h> structmystruct { inti; charcha; }; intmain(void) { FILE*stream; structmystructs; if((stream=fopen("TEST.$$$","wb"))==NULL)/*openfileTEST.$$$*/ { fprintf(stderr,"Cannotopenoutputfile.\n"); return1; } s.i=0; s.cha='A'; fwrite(&s,sizeof(s),1,stream);/*寫的struct文件*/ fclose(stream);/*關閉文件*/ return0; }