真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

c語言中關于文件的函數(shù)嗎 c語言文件函數(shù)有哪些

C語言中有關文件函數(shù)的問題 有加分

很簡單

蘿北ssl適用于網(wǎng)站、小程序/APP、API接口等需要進行數(shù)據(jù)傳輸應用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)公司的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:13518219792(備注:SSL證書合作)期待與您的合作!

因為沒有關閉文件指針fp

寫完后會自動后移

不信你可以在第一次

fwrite

后關閉文件指針

再打開

再fwrite試試

此時fp指針就又指向文件開頭了

所有關于文件指針操作的函數(shù)都是這樣的

不是因為wb

wb

write

byte

二進制寫入的意思

先操作fwrite時

是寫入內(nèi)存的

fclose時才寫入文件的

c語言中進行文件讀寫的函數(shù)是?

C語言對文件進行讀取之前需要先打開文件,然后再進行讀寫,讀寫完之后關閉文件。

可以使用兩組函數(shù)實現(xiàn):

一、C語言庫函數(shù)

打開文件:fopen

讀寫(一般對應成對使用):

fgetc---fputc fgets---fputs fread---fwrite

關閉文件:fclose

二、Linux系統(tǒng)函數(shù)

打開文件:open

讀寫(一般對應成對使用):read---write

關閉文件:close

C語言文件函數(shù)

//要另外說下如fprintf(stderr, "Can't open %s\n", file_app);這是向文件或者系統(tǒng)設備輸出的函數(shù);但他的文件指針為stderr;這是c中的標準錯誤輸出設備指針,系統(tǒng)自動分配為顯示器故相當于printf("Can't open %s\n", file_app);

#include stdio.h

#include stdlib.h

#include string.h

#define BUFSIZE 1024

#define SLEN 81

void append(FILE *source, FILE *dest);

int main(void)

{

FILE *fa, *fs; //定義2個文件類型指針

int files = 0; // 追加文件個數(shù)

char file_app[SLEN];

char file_src[SLEN]; // 2個字符串用來儲存文件名;

puts("Enter name of destination file:");//輸出Enter name of destination file:

gets(file_app);//輸入要追加的文件名

if ((fa = fopen(file_app, "a")) == NULL)//fa指向追加的目的文件,以追加方式打開文件,如果打開失敗退出;

{

fprintf(stderr, "Can't open %s\n", file_app);

exit(2);

}

if (setvbuf(fa, NULL, _IOFBF, BUFSIZE) != 0)//創(chuàng)建緩沖器與流相關,大小為BUFSIZE,作用是提高IO速度;如果打開失敗退出

{

fputs("Can't create output buffer\n", stderr);

exit(3);

}

puts("Enter name of first source file (empty line to quit):");//輸出Enter name of first source file (empty line to quit):

while (gets(file_src) file_src[0] != '\0')//輸入源文件如果是空串結(jié)束循環(huán)

{

if (strcmp(file_src, file_app) == 0)//如果源和追加文件相同

fputs("Can't append file to itself\n",stderr);

else if ((fs = fopen(file_src, "r")) == NULL)//如果打開源文件失敗

fprintf(stderr, "Can't open %s\n", file_src);

else

{

if (setvbuf(fs, NULL, _IOFBF, BUFSIZE) != 0)//創(chuàng)建緩沖器與流相關,大小為BUFSIZE,作用是提高IO速度;如果打開失敗開始下次循環(huán)

{

fputs("Can't create input buffer\n",stderr);

continue;

}

append(fs, fa);//函數(shù)

if (ferror(fs) != 0)//檢查文件操作是否有錯

fprintf(stderr,"Error in reading file %s.\n",

file_src);

if (ferror(fa) != 0)

fprintf(stderr,"Error in writing file %s.\n",

file_app);

fclose(fs);//關閉源文件

files++;//追加文件數(shù)+1

printf("File %s appended.\n", file_src);

puts("Next file (empty line to quit):");

}

}

printf("Done. %d files appended.\n", files);

fclose(fa);//關閉追加文件

return 0;

}

void append(FILE *source, FILE *dest)

{

size_t bytes;

static char temp[BUFSIZE];

while ((bytes = fread(temp,sizeof(char),BUFSIZE,source)) 0)//把源文件的內(nèi)容追加到追加文件,塊大小sizeof(char),塊數(shù)為BUFSIZE

fwrite(temp, sizeof (char), bytes, dest);//寫文件塊大小sizeof(char),塊數(shù)為BUFSIZE

}


本文題目:c語言中關于文件的函數(shù)嗎 c語言文件函數(shù)有哪些
URL鏈接:http://weahome.cn/article/hhjsjp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部