文件指針的問題,一般來說,同時讀寫一個文件并不可取。

成都創(chuàng)新互聯(lián)專業(yè)IDC數(shù)據(jù)服務(wù)器托管提供商,專業(yè)提供成都服務(wù)器托管,服務(wù)器租用,服務(wù)器托管,服務(wù)器托管,成都多線服務(wù)器托管等服務(wù)器托管服務(wù)。
//用函數(shù)fputs寫入時,可以通過寫入\n或\r\n來寫入換行符,但fputs不會自動在字符串的末尾追加換行符。//函數(shù)fgets的原型是:char* fgets(char *str,int num,F(xiàn)ILE *stream)。
fputs的第一個參數(shù)是const char *,但是你傳入了一個struct aa *,所以出現(xiàn)這個警告。消除警告的方法:改成:fputs((char *)ff,w);但是即使這么改了,我估計還是要出錯。
C語言提供了fgets()、fputs()函數(shù)對文件進行讀寫“一行”的數(shù)據(jù),字符串以\n字符換行,注意,所謂的“一行”數(shù)據(jù),它的最后一個有效字符是’\n’,表示換行符號。
if(line[1]==*) a=(int(line[0])-48)*(int(line[2])-48);if(line[1]==/) a=(int(line[0])-48)/(int(line[2])-48);fputs(line,fp2);fputc(=,fp2);我覺的你這里是有問題的。
如果fputs(asdf\nKJHGF,fp);的話,應(yīng)該可以寫入2行的。另外,在循環(huán)中使用,也可以寫入多行的。
1、//用函數(shù)fputs寫入時,可以通過寫入\n或\r\n來寫入換行符,但fputs不會自動在字符串的末尾追加換行符。//函數(shù)fgets的原型是:char* fgets(char *str,int num,F(xiàn)ILE *stream)。
2、看來你對fgets這個函數(shù)還不太了解。它的原型是char *fgets(char *s, int n, FILE *stream);它從流中讀取n-1個字符,除非讀完一行,參數(shù)s是來接收字符串,如果成功則返回s的指針,否則返回NULL。
3、fputs(q,p); 是對的,可以把鍵盤輸入的字符串q(例如abc)輸入到文件中。fgets(c,4,p); 也是對的,是可以從文件中讀出干剛寫入的字符串(例如abc)。
所以,通過這個例子,我們學(xué)習(xí)了fgetc()、fputc()函數(shù)的操作,對文件進行一個字符的讀寫操作。
string類型是c++的STL中的類型,它用于處理字符串。C語言中使用的字符串是C風(fēng)格的字符串,即末尾以’\0‘字符為結(jié)束符。string類型的字符串,可以調(diào)用其成員函數(shù)c_str(),來將string類型的對象轉(zhuǎn)成C風(fēng)格的字符串。
文件指針的問題,一般來說,同時讀寫一個文件并不可取。
通過fopen打開文件,fputs像文件寫入數(shù)據(jù),fclose關(guān)閉文件。
新聞標(biāo)題:c語言fputs函數(shù)用法 c語言fputc函數(shù)的用法
網(wǎng)站網(wǎng)址:http://chinadenli.net/article40/decihho.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供、Google、電子商務(wù)、ChatGPT、軟件開發(fā)、App設(shè)計
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)