fwrite:

fread:

fread/fwrite:

        拷贝图片:

#include <stdio.h>int main(void)
{FILE *fsrc = NULL;FILE *fdst = NULL;char tmpbuff[4096] = {0};size_t nret = 0;fsrc = fopen("src.jpg", "r");if (NULL == fsrc){perror("fail to fopen");return -1;}fdst = fopen("dst.jpg", "w");if (NULL == fdst){perror("fail to fopen");return -1;}while (1){nret = fread(tmpbuff, 1, sizeof(tmpbuff), fsrc);if (0 == nret){break;}fwrite(tmpbuff, 1, nret, fdst);}fclose(fsrc);fclose(fdst);return 0;
}

流的定位

        概念:

                设置流的偏移量

        偏移量的设置:

                fseek:

                ftell:

                rewind:

文件IO

        概念:

                标准IO是一种有缓存的IO,文件IO没有缓存,适合于通信、硬件设备操作

                标准IO是库函数,文件IO是系统调用

         系统调用与库函数:

                系统调用:是linux内核中的代码,只能在linux系统中使用

                库函数:是对系统调用的封装,可以在不同的操作系统中安装并使用,库函数最终还是

                              要系统调用完成对应功能

         文件IO函数接口:

                函数接口:

                文件打开:

                        有三个特殊的文件描述符:标准输入(0)、标准输出(1)、标准错误(2)

                        文件描述符特点:

                                非负整数

                                取尚未被占用的最小的非负整数

                                文件描述符是有上限的,到达上限后再打开会报错误

                关闭文件描述符:

                标准IO对应的文件IO的打开方式:

                文件IO读写:

                        write:

                        

                

        

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/918490.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/918490.shtml
英文地址,请注明出处:http://en.pswp.cn/news/918490.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2025年中科院2区红杉优化算法Sequoia Optimization Algorithm-附Matlab免费代码

1. 简介 提出了红杉优化算法&#xff08;SequoiaOA&#xff09;&#xff0c;这是一种受红杉森林生态系统自我调节动力学和弹性启发的新型元启发式方法&#xff0c;不同于传统的奇异生物学或现象学灵感。开发一个全面的生态系统驱动框架&#xff0c;包括数学建模、系统分析和通过…

【C#】从 Queue 到 ConcurrentQueue:一次对象池改造的实战心得

背景 最近在做一个图像处理的 WPF 项目&#xff0c;底层使用 Halcon 的 HObject 来存放图像。为了减少频繁创建和释放对象带来的开销&#xff0c;我实现了一个对象池&#xff0c;用来存放 HObject&#xff0c;方便后续流程复用。 最初的实现用的是 .NET 自带的 Queue<T>&…

深度解析 AS32S601 芯片 CAN Bus Off 机制:从原理到应用的全流程指南

一、前言在汽车电子、工业自动化等众多领域&#xff0c;CAN 总线作为一种可靠的通信协议被广泛应用。而 AS32S601 芯片凭借其卓越的性能和可靠性&#xff0c;在这些领域也发挥着重要作用。其中&#xff0c;CAN Bus Off 功能作为 CAN 总线通信中的关键错误处理机制&#xff0c;对…

PyCharm Community 2024.2.3.exe 安装教程(详细步骤,附安装包下载)

​1. 下载安装包​ 安装下载地址&#xff1a;https://pan.quark.cn/s/ca11cb817ee5&#xff0c;你已经下载好了 pycharm-community-2024.2.3.exe 这个文件&#xff08;通常是从 JetBrains 官网下的&#xff09;。双击这个 .exe 文件开始安装。 ​2. 开始安装向导​ 双击后&am…

JAVA:SpringBoot 集成 Selenium 实现高效爬虫

🌐 1、简述 在互联网数据采集中,传统基于 Jsoup 或 HttpClient 的爬虫方案面对复杂 JavaScript 渲染页面时经常力不从心。此时,Selenium WebDriver 提供了更强大的模拟真实浏览器行为能力,成为爬取动态网站的利器。 为了绕过反爬机制,结合 IP 代理池 是提升稳定性和并发…

终端安全检测和防御技术

目录 1. 终端安全风险 2. 终端安全检测和防御技术 3. 网关杀毒技术 3.1 计算机病毒工作步骤 3.2 杀毒防御产品 3.3 网关杀毒功能优势 3.4 网关杀毒实现方式 4.僵尸网络检测和防御技术 4.1 僵尸网络 4.2 僵尸网络的形成过程&#xff08;APT场景下&#xff09; 4.3 检测…

Java缓冲流

字节缓冲流&#xff1a;原理&#xff1a;底层自带长度为8192的缓冲区提高性能拷贝文件一次读一个字节一次读一个字节数组字节缓冲流的读写原理字符缓冲流&#xff1a;特定方法字符缓冲输入流基本写法输入所有数据字符缓冲流输出总结

web服务器tomcat内部工作原理以及样例代码

目录 一、Tomcat 运行原理与 Servlet 机制 1、为什么 Java Web 项目需要 Tomcat 2. 进程模式 vs 线程模式 3、Servlet / Controller 是怎么跟 Tomcat 对接的? 4、java反射与代理机制 ※--高级知识点 (1)原理 (1)样例:用反射和注解模拟 Tomcat 处理 HTTP 请求时,动…

AI赋能IT服务管理:从被动响应到智能驱动的跃迁

过去十年&#xff0c;IT服务管理&#xff08;ITSM&#xff09;经历了从纸质工单到数字化平台的变革&#xff0c;但无论工具多么先进&#xff0c;大多数IT团队依然面临着相同的困境&#xff1a;事件处理速度跟不上业务变化人工重复操作占用大量时间数据虽多&#xff0c;却缺乏可…

云计算-K8s 核心组件之CronJob、RBAC、HPA ,LimitRange、DaemonSet、nodeSelector如何作战?

目录 1.CronJob管理 2.RBAC管理 3.HPA管理 4.健康检查 5.LimitRange管理 6.DaemonSet管理 7.nodeSelector管理 简介 1. CronJob&#xff08;定时任务控制器&#xff09; 按固定时间间隔&#xff08;类似 Linux cron&#xff09;自动触发一次性任务&#xff08;Job&#…

数据分析学习总结之实例练习(双十一淘宝美妆)

本次通过对双十一淘宝美妆数据的分析实践&#xff0c;我系统掌握了数据处理与分析的完整流程&#xff0c;从数据初步认知到深度挖掘&#xff0c;再到可视化呈现与结论提炼&#xff0c;收获颇丰。以下是具体的学习总结&#xff1a;一、数据初步了解&#xff1a;奠定分析基础在分…

如何评估一个需求的业务价值

要科学、全面地评估一个需求的业务价值&#xff0c;核心在于建立一个多维度的、从战略到财务、从客户到风险的“价值罗盘”&#xff0c;并运用这套罗盘&#xff0c;对需求进行系统性的、数据驱动的量化与定性分析。一套成熟的价值评估体系&#xff0c;其构建必须涵盖五大关键视…

day38_2025-08-12

一、 图像数据的介绍 1.1 灰度图像 从这里开始我们进入到了图像数据相关的部分&#xff0c;也是默认你有之前复试班计算机视觉相关的知识&#xff0c;但是一些基础的概念我仍然会提。 昨天我们介绍了minist这个经典的手写数据集&#xff0c;作为图像数据&#xff0c;相较于结构…

Kubernetes1.28-单Master集群部署

一、 服务器环境及初始化 1、架构分析 集群角色主机名操作系统IP地址masterk8s-masterOpenEuler24.03192.168.166.128nodek8s-node1OpenEuler24.03192.168.166.129nodek8s-node2OpenEuler24.03192.168.166.130 2、初始化 所有节点都需要初始化&#xff01; 2.1、清空Iptal…

使用pyqt5实现可勾选的测试用例界面

目录 界面 代码 python有哪些自动化测试的库和html的报告的库可以和这个软件结合使用的 **一、自动化测试核心库** **二、HTML报告生成库** **三、其他实用工具** **与您的工具结合建议** 参考 界面 代码 import sys import time import random from PyQt5.QtWidgets import (…

C语言变量的声明和定义有什么区别?

定义&#xff1a;定义&#xff1a;为变量分配地址和存储空间声明&#xff1a;不分配地址和存储空间一个变量可以在多个地方声明&#xff0c;但是只在一个地方定义。加入extern修饰的是变量的声明&#xff0c;说明此变量将在文件或在文件后面部分定义。1.变量声明作用&#xff1…

imx6ull-驱动开发篇20——linux互斥体实验

目录 实验程序编写 修改设备树文件 LED 驱动修改 mutex.c 测试mutexApp.c Makefile 文件 运行测试 在之前的文章里&#xff0c;我们学习了&#xff1a;驱动开发篇16——信号量与互斥体。 本讲实验里&#xff0c;我们来使用互斥体mutex实现 LED 灯互斥访问的功能&#x…

[4.2-2] NCCL新版本的register如何实现的?

文章目录1->2->31. ncclRegisterP2pIpcBuffer2. ncclIpcLocalRegisterBuffer(..., 1, 0,...)3. ipcRegisterBuffer(..., regRecord,..., isLegacyIpc)4. p2pProxyRegister()1->2->3 1. ncclRegisterP2pIpcBuffer 在enqueue.cc内的调用是&#xff1a; NCCLCHECK(…

在idea中git切换分支,但是我的文件没add,没commit

这是一个很悲伤的故事&#xff0c;我朋友一个下午写了4个小时的代码&#xff0c;差不多10多个类&#xff0c;都在切换分支的时候。IDEA发现有冲突&#xff0c;然后就要resolve conflict&#xff0c;发现自己不知道怎么操作&#xff0c;就点了abort & rollback。然后所有代码…

GPFS api

一、核心命令行 API&#xff08;mm 命令集&#xff09; GPFS 最基础且常用的接口是命令行工具集&#xff08;以mm为前缀&#xff09;&#xff0c;用于文件系统的创建、配置、管理和监控。这些命令可直接在终端执行&#xff0c;也可通过脚本&#xff08;如 Shell、Python&#…