当前位置: 首页 > wzjs >正文

虎门镇网站建设公司发稿网

虎门镇网站建设公司,发稿网,免费作图网站都有哪些,做网站需要多少钱啊目录 引言 一、文件操作函数分类概述 二、字符输入输出函数 三、文本行输入输出函数 四、格式化输入输出函数 五、二进制输入输出函数 六、总结 引言 在C语言编程中,文件操作是一项非常重要的技能。无论是处理配置文件、记录日志,还是存储和读取数据…

目录

引言

一、文件操作函数分类概述

二、字符输入输出函数

         三、文本行输入输出函数

四、格式化输入输出函数

五、二进制输入输出函数

         六、总结


引言



 
在C语言编程中,文件操作是一项非常重要的技能。无论是处理配置文件、记录日志,还是存储和读取数据,都离不开文件操作。本文将详细介绍C语言中常用的文件操作函数,帮助大家更好地理解和运用这些函数。

 



一、文件操作函数分类概述


C语言提供了丰富的文件操作函数,根据功能可大致分为字符输入输出、文本行输入输出、格式化输入输出以及二进制输入输出函数,这些函数在不同的输入输出场景下发挥着作用。
 



二、字符输入输出函数



2.1 fgetc函数
 
 fgetc 函数用于从指定的输入流中读取一个字符。它适用于所有输入流,包括标准输入流 stdin 和文件输入流。函数原型为 int fgetc(FILE *stream) ,返回值为读取到的字符(以 int 类型表示),当读取到文件末尾或发生错误时,返回 EOF (-1)。



 ...c
#include <stdio.h>
int main() {
    FILE *fp = fopen("test.txt", "r");
    if (fp != NULL) {
        int ch = fgetc(fp);
        while (ch != EOF) {
            putchar(ch);
            ch = fgetc(fp);
        }
        fclose(fp);
    }
    return 0;
}
 ...



 
2.2 fputc函数
 
 fputc 函数用于向指定的输出流写入一个字符,适用于所有输出流。函数原型是 int fputc(int c, FILE *stream) ,返回值为写入的字符,如果写入失败则返回 EOF 。
 



...c
#include <stdio.h>
int main() {
    FILE *fp = fopen("test.txt", "w");
    if (fp != NULL) {
        fputc('H', fp);
        fputc('e', fp);
        fputc('l', fp);
        fputc('l', fp);
        fputc('o', fp);
        fclose(fp);
    }
    return 0;
}
 ...
 



三、文本行输入输出函数
 



3.1 fgets函数
 
 fgets 函数从输入流中读取一行字符,它会读取到换行符或者达到指定的字符数限制为止。原型为 char *fgets(char *str, int num, FILE *stream) ,返回值为指向读取到的字符串的指针,如果读取失败或到达文件末尾则返回 NULL 。
 



...c
  
#include <stdio.h>
int main() {
    FILE *fp = fopen("test.txt", "r");
    char buffer[100];
    if (fp != NULL) {
        while (fgets(buffer, sizeof(buffer), fp) != NULL) {
            printf("%s", buffer);
        }
        fclose(fp);
    }
    return 0;
}
 ...



3.2 fputs函数
 
 fputs 函数用于向输出流写入一个字符串,不包括字符串末尾的空字符 \0 。函数原型为 int fputs(const char *str, FILE *stream) ,成功时返回非负值,失败时返回 EOF 。
 



...c
  
#include <stdio.h>
int main() {
    FILE *fp = fopen("test.txt", "w");
    const char *str = "Hello, world!";
    if (fp != NULL) {
        fputs(str, fp);
        fclose(fp);
    }
    return 0;
}
 ...
 



四、格式化输入输出函数
 



4.1 fscanf函数
 
 fscanf 函数从输入流中按照指定的格式读取数据,适用于所有输入流。原型为 int fscanf(FILE *stream, const char *format, ...) ,返回值为成功匹配和赋值的输入项的个数。
 



...c
  
#include <stdio.h>
int main() {
    FILE *fp = fopen("data.txt", "r");
    int num;
    if (fp != NULL) {
        fscanf(fp, "%d", &num);
        printf("读取到的数字: %d\n", num);
        fclose(fp);
    }
    return 0;
}
 ...
 



4.2 fprintf函数
 
 fprintf 函数将数据按照指定格式输出到输出流中。函数原型是 int fprintf(FILE *stream, const char *format, ...) ,返回值为实际输出的字符数,若出错则返回负值。
 



...c
#include <stdio.h>
int main() {
    FILE *fp = fopen("data.txt", "w");
    int num = 100;
    if (fp != NULL) {
        fprintf(fp, "数字是: %d", num);
        fclose(fp);
    }
    return 0;
}
 ...
 



五、二进制输入输出函数
 



5.1 fread函数
 
 fread 函数用于从文件中读取二进制数据。原型为 size_t fread(void *ptr, size_t size, size_t count, FILE *stream) ,返回值为实际读取的完整项数。
 



...c
#include <stdio.h>
struct Data {
    int num;
    float fnum;
};
int main() {
    FILE *fp = fopen("data.bin", "rb");
    struct Data data;
    if (fp != NULL) {
        fread(&data, sizeof(struct Data), 1, fp);
        printf("读取到的整数: %d, 浮点数: %f\n", data.num, data.fnum);
        fclose(fp);
    }
    return 0;
}
 ...
 



5.2 fwrite函数
 
 fwrite 函数用于向文件中写入二进制数据。函数原型是 size_t fwrite(const void *ptr, size_t size, size_t count, FILE *stream) ,返回值为实际写入的完整项数。
 



...c
  
#include <stdio.h>
struct Data {
    int num;
    float fnum;
};
int main() {
    FILE *fp = fopen("data.bin", "wb");
    struct Data data = {10, 3.14};
    if (fp != NULL) {
        fwrite(&data, sizeof(struct Data), 1, fp);
        fclose(fp);
    }
    return 0;
}
 ...
 



六、总结



 
C语言的文件操作函数为我们提供了强大而灵活的文件处理能力。通过合理运用这些函数,我们可以轻松地实现各种文件相关的功能。在使用时,要注意文件的打开模式、函数的返回值以及错误处理,以确保程序的稳定性和正确性。希望本文能对大家在C语言文件操作方面有所帮助。
 

http://www.dtcms.com/wzjs/186213.html

相关文章:

  • wordpress商业用途官方进一步优化
  • 大型网站建设推广地推接单正规平台
  • yes风淘宝网站上海网站关键词排名优化报价
  • 网站设计与管理semiconductor是什么意思
  • 网站管理系统排行榜百度seo排名点击
  • 网站布局方式站长工具精品
  • php 政府网站管理系统关联词有哪些关系
  • 在家做网站建设搜索引擎竞价广告
  • 网站多服务器建设关键词查询工具
  • 企业网站建设公司那家好百度百家号官网登录
  • 公司网站做的一样算不算侵权百度sem竞价推广
  • 浙江响应式网站建设制作优化教程网官网
  • 信息流广告公司沧州网站seo
  • 娱乐网站建设网站的排名优化怎么做
  • wordpress 做网站2022黄页全国各行业
  • 做网站公司选哪家百度关键词seo公司
  • 网站建设实例教程网页设计模板
  • 做一个网站成本多少钱湖南网站托管
  • 中国做外贸网站有哪些网站建设网站定制
  • wordpress 体育seo网站编辑优化招聘
  • wordpress十大主题野狼seo团队
  • 一流的赣州网站建设百度识图网页版入口
  • 不错的网站建设公司ios aso优化工具
  • 建设网站外贸营销管理
  • 网站域名使用代理店铺推广软文300字
  • 设计什么网站简单什么叫营销
  • 集团网站开发费用ui设计公司
  • 长寿做网站seo的重要性
  • wordpress 凌风石家庄谷歌seo公司
  • wordpress表单提交显示插件泰州网站整站优化