国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C > 正文

C語言中clearerr函數(shù)的用法

2023-06-06 12:10:50
字體:
供稿:網(wǎng)友

此函數(shù)包含在stdio.h頭文件中,主要是用來復(fù)位錯誤標(biāo)志。

函數(shù)原型:void clearerr(FILE *fp);

函數(shù)功能:復(fù)位錯誤標(biāo)志,即:使fp所指向的文件中的錯誤標(biāo)志和文件結(jié)束標(biāo)志置0。當(dāng)輸入輸出函數(shù)對文件進(jìn)行讀寫出錯時,文件就會自動產(chǎn)生錯誤標(biāo)志,這樣會影響程序?qū)ξ募暮罄m(xù)操作。clearerr函數(shù)就是要復(fù)位這些錯誤標(biāo)志,也就是使fp所指向的文件的錯誤標(biāo)志和文件結(jié)束標(biāo)志置0,從而使文件恢復(fù)正常。

返回值:沒有返回值。

下面給出一個程序范例來演示該函數(shù)的使用方法。
  #include <stdio.h>
  #include <stdlib.h>

  int main(int argc, char *argv[]) {
    FILE *in, *out;
    char ch;

    if((in=fopen("inFile.txt""rb")) == NULL) {
      printf("Cannot open input file./n");
      exit(1);
    }
    if((out=fopen("outFile.txt""wb")) == NULL) {
      printf("Cannot open output file./n");
      exit(1);
    }

    while(!feof(in)) {
      ch = getc(in);
      if(ferror(in)) {
        printf("Read Error");
        clearerr(in);
        break;
      else {
        if(!feof(in))
          putc(ch, out);
         
        if(ferror(out)) {
          printf("Write Error");
          clearerr(out);
          break;
        }
      }
    }
    fclose(in);
    fclose(out);

    return 0;
  }

注意:ferror函數(shù)與clearerr函數(shù)應(yīng)該配合使用。也就是說,通過ferror函數(shù)檢測出文件有錯誤標(biāo)志后要用clearerr函數(shù)復(fù)位錯誤標(biāo)志。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 天门市| 湟源县| 平乡县| 普洱| 景洪市| 乌拉特中旗| 威远县| 桂林市| 安阳市| 吴忠市| 齐河县| 平顺县| 逊克县| 东至县| 成都市| 安塞县| 娱乐| 彰化市| 霍城县| 吉水县| 天台县| 嘉善县| 安泽县| 凤城市| 榆社县| 宜州市| 清河县| 安龙县| 静安区| 临泽县| 霍邱县| 巫山县| 彝良县| 舒兰市| 大安市| 平定县| 东明县| 澳门| 正安县| 沙田区| 肇州县|