二进制
二进制文件读写两个重要的函数: fread 和 fwrite , fread 用于读取文件 , fwrite 用于写出文件;
fread / fwrite 函数 既可以操作 二进制文件 , 又可以操作 文本文件;
getc / putc 函数 , fscanf / fprintf 函数 , fgets / fgets 函数 , 只能用于操作 文本文件.
代码链接:https://github.com/Haiezan/Program-learning/tree/master/01fwrite
fwrite 函数
- 函数原型
size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream)
- 参数值说明
const void *ptr : 指针指向要写出数据的内存首地址 ;
size_t size : 要写出数据的 基本单元 的字节大小 , 写出单位的大小 ;
size_t nmemb : 要写出数据的 基本单元 的个数 ;
FILE *stream : 打开的文件指针 ;
- 返回值说明
size_t 返回值返回的是实际写出到文件的基本单元个数 ;
fwrite 示例
- fwrite 函数示例
// 01fwrite.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
#include <iostream>
int main()
{
// 使用 "wb" 二进制写的方式打开文件
FILE* p = fopen("D:\\a.txt", "wb");
// 用于写出数据的缓冲区
char buffer[1024] = { 0 };
// 设置缓冲区数值
buffer[0] = 'H';
buffer[1] = 'e';
buffer[2] = 'l';
buffer[3] = 'l';
buffer[4] = 'o';
// buffer : 将指针对应的内存的写出到文件中
// sizeof(char) : 写出的基本单元字节长度
// sizeof(buffer) : 写出的基本单元个数,
// 写出字节个数是 sizeof(buffer) * sizeof(char)
// p : 文件指针
// 返回值 : fwrite 函数返回值表示写出到的 基本单元 的个数
size_t count = fwrite(buffer, sizeof(char), 5, p);
// 打印写出的内容和写出的 基本单元 个数
printf("fread : buffer = %s , write count = %u\n", buffer, count);
// 逐个字节打印读取出数据的 ASCII 码
int i = 0;
for (i = 0; i < count; i++) {
printf("buffer[%d] = %x, %c\n", i, buffer[i], buffer[i]);
}
printf("Main End\n");
return 0;
}
- 执行结果
fread : buffer = Hello , write count = 5 buffer[0] = 48, H buffer[1] = 65, e buffer[2] = 6c, l buffer[3] = 6c, l buffer[4] = 6f, o Main End
FEATURED TAGS
jekyll
RubyGems
Blog
Mac
终端
Git
弹塑性分析
非线性
SAUSAGE
Github
纤维素
分层壳
iOS
ABAQUS
Avg:75%
魔方
三阶
二阶
广东实验公开赛
WCA
SAP2000
Williams双杆体系
几何非线性
GitBook
Markdown
Typora
Node.js
html
超限
抗剪截面验算
剪压比
微信公众号
地震波
波谱分析
动力弹塑性分析
初始缺陷
欧拉公式
动力弹塑性
超高层
选波
视频
Delta
SAUSG
屈曲分析
弹塑性时程分析
子程序
跨层柱
层间位移角
层剪力
HKSC
steel
Eurocodes
弹塑性
非线性设计
AISC
Imperfections
YJK
直接分析法
delta
构件缺陷
整体缺陷
直接分析设计
SAUSG-Delta
原理
案例
PPT
建筑云联盟
C++
MFC
ChartCtrl
fema
pushover
Equivalent Linearization
RGB
编程
颜色
网络
远程桌面
PI
ZETA
DELTA
OpenSAUSG
VS
C
CUDA
fwrite
二进制
bat
cmd
rdp
mstsc
数据结构
2024
深度学习
cuda
miniconda
pytorch
ChatGPT