文档章节

使用fwrite()和fread()函数直接访问文件

努力喵
 努力喵
发布于 2015/10/20 21:26
字数 187
阅读 10
收藏 0
点赞 0
评论 0
// direct.c -- fwrite()和fread()用法演示
#include <stdio.h>
#include <stdlib.h>
#define SIZE 20

int main(void){
  int count, array1[SIZE], array2[SIZE];
  FILE *fp;
  
  // 给array1[]中的元素赋值
  for(count = 0; count < SIZE; count++)
    array1[count] = 2 * count;
  
  //打开二进制模式文件
  if((fp = fopen("direct.txt", "wb")) == NULL){
    fprintf(stderr, "Error opening file.");
    exit(1);
  }
  
  //把array[]1保存至文件中
  if(fwrite(array1, sizeof(int), SIZE, fp) != SIZE){
    fprintf(stderr, "Error writing to file.");
    exit(1);
  }
  fclose(fp);
  
  //以二进制模式打开相同的文件读取数据
   if((fp = fopen("direct.txt", "rb")) == NULL){
     fprintf(stderr, "Error opening file.");
     exit(1);
   }
   
   //读取array2[]中的数据
   if(fread(array2, sizeof(int), SIZE, fp) != SIZE){
     fprintf(stderr, "Error reading file.");
     exit(1);
   }
   fclose(fp);
   
   //显示两个数组中的内容
   for(count = 0; count < SIZE; count++)
     printf("%d\t%d\n", array1[count], array2[count]);
   return 0; 
}


© 著作权归作者所有

共有 人打赏支持
努力喵
粉丝 5
博文 105
码字总数 34117
作品 0
广州
C语言编程学习:C语言以数据块的形式读写文件

C语言是面向过程的,而C++是面向对象的 C和C++的区别: C是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到...

小辰带你看世界
05/24
0
0
文件操作:fread()和fwrite()

fread和fwrite函数功能 用来读写一个数据块。 一般调用形式 fread(buffer,size,count,fp); fwrite(buffer,size,count,fp); 说明 (1)buffer:是一个指针,对fread来说,它是读入数据的存放地...

野渡书生
2016/03/11
10
0
文件系统性能测试指标

测试的定义 Write: 测试向一个新文件写入的性能。当一个新文件被写入时,不仅仅是那些文件中的数据需要被存储,还包括那些用于定位数据存储在存储介质的具体位置的额外信息。这些额外信息被称...

Wilson9527
2016/11/14
0
0
文件操作函数

要求:把a.txt的内容读出来,赋给$str变量 /* filegetcontents()可以获取一个文件的内容或网络资源的内容 filegetcontents()是读文件/读网络比较便捷的一个函数 帮我们封装了打开/关闭等操作、...

科技小能手
2017/11/12
0
0
嵌入式开发之C基础学习笔记09--位段,枚举和文件操作

位段(仅作理解) 位段(bit-field):访问字节中到位到内设机制,可以访问单个未。这是C语言访问二进制位到两种方式到一种(另一种方式是位运算) 1)特点: .内存特别紧张时,可以把若干BOO...

吴锦涛
2012/12/16
0
0
c语言基础学习10_文件操作02

============================================================================= ============================================================================= 涉及到的知识点有: 六......

黑泽明军
01/28
0
0
unix环境-文件操作: 带缓冲I/O 和 不带缓冲I/O详解

首先要明白不带缓冲的概念:所谓不带缓冲,并不是指内核不提供缓冲,而是只单纯的系统调用,不是函数库的调用。系统内核对磁盘的读写都会提供一个块缓冲,当用write函数对其写数据时,直接调...

follitude
2016/09/22
30
0
FTP上传的实现

对于文件的读写不太熟悉,犯了不少错误。 比如,对于传送的文件中有各种文件,刚开始时用的r打开,只能实现txt文件的传输,并且传输后得到的文件的格式与源文件不一致。还有对于fgets与fread...

技术小阿哥
2017/11/27
0
0
Linux下C/C++的文件操作open、fopen与freopen

open是linux下的底层系统调用函数,fopen与freopen c/c++下的标准I/O库函数,带输入/输出缓冲。 linxu下的fopen是open的封装函数,fopen最终还是要调用底层的系统调用open。 所以在linux下如...

PlayWithYou
2017/08/18
0
0
二进制文件中读写结构体

///////////////////////////////////////////////////////////// //老师给我们分布里一个作业,让我们定义一个怪物的结构体, //输入你想创建的数字就可以创建出相应个数的怪物。 //然后再输...

云栖希望。
2017/12/04
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

about git flow

  昨天元芳做了git分支管理规范的分享,为了拓展大家关于git分支的认知,这里我特意再分享这两个关于git flow的链接,大家可以看一下。 Git 工作流程 Git分支管理策略   git flow本质上是...

qwfys
今天
1
0
Linux系统日志文件

/var/log/messages linux系统总日志 /etc/logrotate.conf 日志切割配置文件 参考https://my.oschina.net/u/2000675/blog/908189 dmesg命令 dmesg’命令显示linux内核的环形缓冲区信息,我们可...

chencheng-linux
今天
1
0
MacOS下给树莓派安装Raspbian系统

下载镜像 前往 树莓派官网 下载镜像。 点击 最新版Raspbian 下载最新版镜像。 下载后请,通过 访达 双击解压,或通过 unzip 命令解压。 检查下载的文件 ls -lh -rw-r--r-- 1 dingdayu s...

dingdayu
今天
0
0
spring boot使用通用mapper(tk.mapper) ,id自增和回显等问题

最近项目使用到tk.mapper设置id自增,数据库是mysql。在使用通用mapper主键生成过程中有一些问题,在总结一下。 1、UUID生成方式-字符串主键 在主键上增加注解 @Id @GeneratedValue...

北岩
今天
2
0
告警系统邮件引擎、运行告警系统

告警系统邮件引擎 cd mail vim mail.py #!/usr/bin/env python#-*- coding: UTF-8 -*-import os,sysreload(sys)sys.setdefaultencoding('utf8')import getoptimport smtplibfr......

Zhouliang6
今天
0
0
Java工具类—随机数

Java中常用的生成随机数有Math.random()方法及java.util.Random类.但他们生成的随机数都是伪随机的. Math.radom()方法 在jdk1.8的Math类中可以看到,Math.random()方法实际上就是调用Random类...

PrivateO2
今天
2
0
关于java内存模型、并发编程的好文

Java并发编程:volatile关键字解析    volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在...

DannyCoder
昨天
0
0
dubbo @Reference retries 重试次数 一个坑

在代码一中设置 成retries=0,也就是调用超时不用重试,结果DEBUG的时候总是重试,不是0吗,0就不用重试啊。为什么还是调用了多次呢? 结果在网上看到 这篇文章才明白 https://www.cnblogs....

奋斗的小牛
昨天
2
0
数据结构与算法3

要抓紧喽~~~~~~~放羊的孩纸回来喽 LowArray类和LowArrayApp类 程序将一个普通的Java数组封装在LowArray类中。类中的数组隐藏了起来,它是私有的,所以只有类自己的方法才能访问他。 LowArray...

沉迷于编程的小菜菜
昨天
1
0
spring boot应用测试框架介绍

一、spring boot应用测试存在的问题 官方提供的测试框架spring-boot-test-starter,虽然提供了很多功能(junit、spring test、assertj、hamcrest、mockito、jsonassert、jsonpath),但是在数...

yangjianzhou
昨天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部