IO进程:fread\fwrite图像拷贝,read\write文件拷贝,时间函数
1.使用fread、fwrite实现图片拷贝
程序代码:
1 #include<myhead.h>2 int main(int argc, const char *argv[])3 {4 //判断传入文件个数5 if(argc!=3)6 {7 printf("input file error\n");8 printf("usage:./a.out srcfile destfile\n");9 return -1;10 }11 FILE *src=NULL;12 //以只读形式打开文件13 if((src=fopen(argv[1],"r"))==NULL)14 {15 perror("fopen error");16 return -1;17 }18 19 FILE *dest=NULL;20 //以只写形式打开文件21 if((dest=fopen(argv[2],"w"))==NULL)22 {23 perror("fopen error");24 return -1;25 }26 unsigned char *buf;27 //求出源文件大小28 fseek(src,0,SEEK_END);//光标从起始点到末端29 long lenth=ftell(src);//得到文件大小30 fseek(src,0,SEEK_SET);//光标回到起始点31 //申请存储源图像大小的内存32 buf=(char *)malloc(sizeof(char)*lenth);33 //从源文件读取34 fread(buf,sizeof(char),lenth,src);35 //将读取的数据写入目标文件中36 fwrite(buf,sizeof(char),lenth,dest);37 printf("success\n");38 //释放空间39 free(buf);buf=NULL;40 //关闭文件41 fclose(src);42 fclose(dest);43 return 0;44 }
运行结果:

2.使用read、write完成两个文件的拷贝
程序代码:
1 #include<myhead.h>2 int main(int argc, const char *argv[])3 {4 //判断终端文件个数5 if(argc!=3)6 {7 printf("input file error\n");8 printf("usage:./a.out srcfile destfile\n");9 return -1;10 }11 //定义文件描述符变量12 int src,dest;13 //以只读形式打开源文件14 if((src=open(argv[1],O_RDONLY))==-1)15 {16 perror("open error");17 return -1;18 }19 //读取源文件内容,写入目标文件20 char buf[128]="";//char类型最多12821 while(1)22 {23 //初始化数组24 memset(buf,0,sizeof(buf));25 //从源文件中读取数据26 int res=read(src,buf,sizeof(buf));27 //写入目标文件28 write(dest,buf,res);29 //判断读取的数据个数30 if(res==0)31 break;32 }33 //关闭文件34 close(src);35 close(dest);36 printf("success\n");37 return 0;38 }
运行结果:

3.将系统时间在文件中显示出来

程序代码:
1 #include<myhead.h>2 int file_line(FILE *fp);3 int main(int argc, const char *argv[])4 {5 //获取系统时间6 time_t oldtime,newtime;//相当于int m,n7 //秒数转换为时间结构体类型指针8 struct tm *t;9 char buf[128]="";//存储时间的字符串10 11 //定义文件指针,以追加形式打开12 FILE *fp=NULL;13 if((fp=fopen("./time.txt","a+"))==NULL)14 {15 perror("fopen error");16 return -1;17 }18 //获取文件行号19 int line=file_line(fp);20 //获取系统时间21 while(1)22 {23 time(&newtime);24 if(oldtime!=newtime)//更新时间25 {26 oldtime=newtime;27 //时间结构体信息28 t=localtime(&newtime);29 //时间转换为字符串30 //调用结构体31 sprintf(buf,"%d、%3d:%3d:%3d\n",line++,t->tm_hour,t->tm_min,t->tm_sec);32 //写入字符串33 fputs(buf,fp);34 fflush(fp);35 }36 }37 //关闭文件38 fclose(fp);39 return 0;40 }41 //定义获取行号函数42 int file_line(FILE *fp)43 {44 //读取文件内容45 char buf[10]="";46 int count=0;47 //循环读取48 while(1)49 {50 //定义一个指针指向读取的字符串51 char *res=fgets(buf,sizeof(buf),fp);52 if(res==NULL)//文件读取结束53 break;54 //判断最后一个字符是否为'\n'55 if(buf[strlen(buf)-1]=='\n')56 count++;57 }58 return count;59 }
运行结果:

流程图:

相关文章:
IO进程:fread\fwrite图像拷贝,read\write文件拷贝,时间函数
1.使用fread、fwrite实现图片拷贝 程序代码: 1 #include<myhead.h>2 int main(int argc, const char *argv[])3 {4 //判断传入文件个数5 if(argc!3)6 {7 printf("input file error\n");8 printf("usage:./a.out …...
基于java的企业校园招聘平台的设计与实现
分享一个自己的毕业设计,想要获取源码的同学加V:qq2056908377 链接:https://pan.baidu.com/s/1It0CnXUvc9KVr1kDcHWvEw 提取码:1234 摘要: 摘要:本毕业设计旨在设计和实现一个企业校园招聘平台…...
Rocky Linux网卡静态配置
一、开源系统 Rocky Linux 下载安装 1、安装教程 Rocky Linux 下载安装 二、远程工具 MobaXterm下载安装 1、安装教程 MobaXterm 下载安装 三、Rocky Linux 网卡配置 1、使用ip addr确认网卡名称(此处可得知网卡为ens160) [rootlocalhost ~]# ip a 1:…...
【C语言】通讯录(静态版本+动态版本)思路解析+完整源代码
通讯录 由于代码比较长,为了增加可读性,分成了contact.h,contact.c,test.c,分别用来声明函数或者类型,实现函数功能,测试代码 contact.h 我们希望通讯录具有增加联系人,删除联系人…...
spring boot自动装配及自动装配条件判断
第一步需要在pom.xml文件指定需要导入的坐标 要是没有自动提示需要检查maven有没有 实现代码 /*springboot第三方自动配置实现方法 * 什么是自动配置 自动配置就是springboot启动自动加载的类不需要在手动的控制反转自动的加入bean中 * * *//*第一种方案包扫描 不推荐因为繁琐…...
LeetCode--2298. 周末任务计数
文章目录 1 题目描述2 测试用例3 解题思路 1 题目描述 表: Tasks ------------------- | Column Name | Type | ------------------- | task_id | int | | assignee_id | int | | submit_date | date | -------------------task_id 是该表的主键(具有唯一值…...
从零开始学习Netty - 学习笔记 - NIO基础 - ByteBuffer: 简介和基本操作
NIO基础 1.三大组件 1.1. Channel & Buffer Channel 在Java NIO(New I/O)中,“Channel”(通道)是一个重要的概念,用于在非阻塞I/O操作中进行数据的传输。Java NIO提供了一种更为灵活和高效的I/O处理方…...
Chatgpt润色文章“咒语”
文章目录 前言一、汉译英二、语法校正三、润色英文段落结构和句子逻辑 前言 一些Chatgpt润色文章常用的命令。 一、汉译英 I am a researcher studying Aerospace Manufacturing and now trying to revise my manuscript which will be submitted to the journal of Nature.I…...
【OpenGL教程2】 简单案例介绍Python 中的 OpenGL
目录 一、介绍二、安装三、编码练习四、结论 一、介绍 在本教程中,我们将学习如何在 Python 中使用PyOpenGL库。OpenGL是一个图形库,受Windows、Linux和MacOS等多个平台支持,也可用于多种其他语言;然而,这篇文章的范围…...
评估方法:CMMI/能力成熟度模型集成
一、什么是CMMI CMMI,全称为Capability Maturity Model Integration,即能力成熟度模型集成。它是由美国卡内基梅隆大学软件工程研究所研发的过程改进模型,也是国际上用于评价软件企业能力成熟度的一项重要标准。 CMMI的目的是帮助软件企业对…...
Gin框架: HTML模板渲染之配置与语法详解
Gin的HTML模板配置 1 )单一目录的配置 配置模板目录,在与main.go同级下, 新建目录,下面二选一,仅作举例, 这里选择 tpls templatestpls 在 tpls 目录下新建 news.html <!-- 最简单的 --> <h1>News Page</h1>&l…...
.NET Core WebAPI中使用Log4net 日志级别分类并记录到数据库
一、效果 记录日志为文档 记录日志到数据库 二、添加NuGet包 三、log4net.config代码配置 <?xml version"1.0" encoding"utf-8" ?> <log4net><!-- Debug日志 --><appender name"RollingFileDebug" type"log4net…...
Day36 贪心算法 part05
划分字母区间 一个字母区间仅有几个字母前一个字母区间有的字母后面都没有 合并区间 天才举一反三写出来了...
C#计算矩形面积:通过定义结构 vs 通过继承类
目录 一、涉及到的知识点 1.结构 2.结构和类的区别 3.继承 4.使用类继承提高程序的开发效率 5.属性 (1)属性定义 (2)get访问器 (3)set访问器 6. 属性和字段的区别 二、实例:通过定义…...
【复现】Panalog大数据日志审计系统 RCE漏洞_51
目录 一.概述 二 .漏洞影响 三.漏洞复现 1. 漏洞一: 四.修复建议: 五. 搜索语法: 六.免责声明 一.概述 Panalog大数据日志审计系统定位于将大数据产品应用于高校、 公安、 政企、 医疗、 金融、 能源等行业之中,针对网络流…...
react【五】redux/reduxToolkit/手写connext
文章目录 1、回顾纯函数2、redux2.1 redux的基本使用2.2 通过action修改store的数值2.3 订阅state的变化2.4 目录结构2.5 Redux的使用过程2.6 redux的三大原则2.7 Redux官方图 3、redux在React中的使用4、react-redux使用4.1 react-redux的基本使用4.2 异步请求 redux-thunk4.3…...
.NET开源的一个小而快并且功能强大的 Windows 动态桌面软件 - DreamScene2
前言 很多同学都不愿给电脑设动态壁纸,其中有个重要原因就是嫌它占资源过多。今天大姚分享一个.NET开源、免费(MIT license)的一个小而快并且功能强大的 Windows 动态桌面软件,支持视频和网页动画播放:DreamScene2。 …...
jsp计算机线上教学系统Myeclipse开发mysql数据库web结构java编程计算机网页项目
一、源码特点 JSP 计算机线上教学系统是一套完善的java web信息管理系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为 TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5…...
RabbitMQ的高可用机制
RabbitMQ通过多种机制提供高可用性(HA)支持,以确保消息系统的稳定性和可靠性。下面将详细介绍这些机制,并提供代码示例。 集群(Clustering) RabbitMQ的集群提供了高可用性和负载均衡。集群中的节点共享同一个Erlang分布式数据库…...
人机协同中的贝叶斯和马尔可夫
人机协同中的马尔可夫链是指在人与机器之间协同工作过程中,可能涉及到的状态转移概率模型。马尔可夫链是一种数学模型,描述了在给定当前状态下,未来状态的概率分布只依赖于当前状态,而与过去状态无关的随机过程。在人机协同工作中…...
基于注意力机制LSTM的孟加拉语新闻生成式摘要模型构建与实践
1. 项目概述:为什么孟加拉语新闻摘要值得投入?每天,我们都被海量的信息所淹没。对于孟加拉语使用者而言,从新闻网站获取信息时,常常需要花费大量时间阅读长篇文章,才能提取出核心事件。传统的抽取式摘要方法…...
C#中Activator的具体使用
Activator 是 C# 中用于动态创建对象实例的核心类,位于 System 命名空间。它通过**反射(Reflection)**机制,在运行时根据类型信息创建对象,而无需在编译时知道具体类型。🔍 一、Activator的核心作用在不知道…...
慢速上传导致浏览器重试
触发场景:Chrome 开启网络限速后,Go 上传接口 20 秒超时,但浏览器端一个 upload 请求 pending 约 40 秒。 该博客由 AI 根据调试过程整理。触发场景 项目中有一个音频上传接口: mux.Handle("POST /v1/audio/upload", ch…...
【码上爬】 题十九:法外狂徒 相应数据加密还原,堆栈分析,扣代码
暗号:aHR0cHM6Ly9tYXNoYW5ncGEuY29tL3Byb2JsZW0tZGV0YWlsLzE5Lw 题目: 先对接口进行分析,参数中并没有任何加密,只是返回的数据是加密的,一个R 一个k 推测r是数据内容,k是解密密钥,进入堆栈以后…...
市面上靠谱的ERP/MES/定制开发/APP开发/软件开发公司
在数字化浪潮下,80%的实体企业都想通过ERP、MES或定制软件实现降本增效,但选对服务商比“买系统”更重要——用模板化系统的企业,70%会因为流程适配差、运维跟不上而半途而废;找外包开发的企业,又面临“开发完就甩手”…...
C语言数组:从基础到实践
一、什么是数组数组就是相同类型数据的集合,这些数据在内存中连续存放,数组里的每个位置叫元素,用下标来访问。特别注意:数组的下标从0开始。以下代码就是一个简单的数组应用:二、数组的基本操作2.1 定义与初始化输出结…...
学 Simulink—— 双定子永磁同步电机(DS‑PMSM)的协同控制与转矩提升仿真(带 MATLAB 脚本(直接运行))
目录 手把手教你学 Simulink—— 双定子永磁同步电机(DS‑PMSM)的协同控制与转矩提升仿真 🔥 前言:为什么做双定子 PMSM? 一、DS‑PMSM 结构与工作原理 1.1 基本结构 1.2 数学模型(dq 轴,含互感耦合) 二、协同控制策略:主从 FOC + 转矩叠加 2.1 控制架构(5 大…...
CANN-HCCL-昇腾NPU分布式训练的通信库怎么选
8 卡 Atlas 800I A2 内部走 HCCS(带宽 200GB/s),跨机走 RoCE(带宽 100GB/s)。HCCL 是昇腾NPU的通信库,对标 NVIDIA 的 NCCL。Tensor Parallel 和 Pipeline Parallel 的 All-Reduce、All-to-All 都靠它。 HC…...
5分钟掌握SVGnest:免费开源矢量嵌套工具,让材料切割效率提升80%
5分钟掌握SVGnest:免费开源矢量嵌套工具,让材料切割效率提升80% 【免费下载链接】SVGnest An open source vector nesting tool 项目地址: https://gitcode.com/gh_mirrors/sv/SVGnest SVGnest是一款完全免费且开源的自动嵌套应用程序,…...
基于首届中国互联网数据挖掘竞赛数据集的行为相似网络分析
在互联网行为分析中,“社交网络分析”不一定只能依赖好友、关注、私信或转发关系。很多时候,数据里并没有显式的社交边,但用户的网页访问、应用使用、停留时长和活跃节奏,本身就能反映出相似的兴趣圈层。 本项目中的“社交网络分析…...
