1,linux平台C简单实现本地文件cp
码子及运行效果测试
编译码子;
运行可执行程序;
2,C通过管道进行文件复制
3,下插曲--文件读写文件定位操作;
linux下lseek函数用法;
lseek()
头文件 #include <sys/types.h>
#include <unistd.h>
protoType:
off_t lseek(int fildes,off_t offset,int whence);//偏移,根源
函数说明:每一个以打开的文件都有读写位置,当打开文件时通常其读写位置是指向文件开头;
若是以附加的方式打开文件(O_APPEND),读写位置指向文件的末尾;
当read()或write()时,读写位置会随之增加
lseek()用来控制文件的读写位置
参数fildes为已打开的文件描述符,参数offset为根据参数whence来移动读写位置的位移数;
参数whence为下列一种
SEEK_SET 参数offset即为新的读写位置
SEEK_CUR 当前读写位置后增加offset个位移量
SEEK_END 将读写位置指向文件尾后 再增加offset个位移量
当whence值为SEEK_CUR或SEEK_END时,参数offset允许负值的出现
较特色的使用方式
1),欲将读写位置移到文件开头:lseek(int fildes,0,SEEK_SET);
2),将读写位置移到文件尾:lssek(int fildes,0,SEEK_END)
3),取得目前文件位置:lseek(int fildes,0,SEEK_CUR)
返回值:当调用成功返回目前的读写位置,也就是距离文件开头多少个字符,
若有错误则返回-1,errno会存放错误号码哦,亲;
错误代码:EINTR 系统中断;
4,网络文件复制传输
Server端码子;
C客户端码子
4.01 文本文件传输测试;
部分文件内容查看
4.02 unzip文件复制测试
[注,我在前面已经说过了,从S端cp一个文件到C端去,我们的最终目标虽然是最后的文件(不限于zip等压缩包,文本文件等,Dir目录暂不支持),但在C端这边文件的存放目录需与S端的这个Cp文件的地方位置一致,不存在,你就得手动自个来,暂时程序还没实现到这一步,不多时Ruiy将会增加此功能,判断存放的Parent FullPath是否存在,No,则程序自个搞定它]
3,cp 目录测试(故意测试,暂时程序不支持)
呵呵,根据码子你就知道为神马了!
5,简单字符串翻转码子(使用堆栈原理);
码子,
测试
6,考题,程序问题修复
7,socket线程实例
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY