完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
`简单压缩文件程序。将两个文件(.txt和.jpg)放入一个文件,再从这个文件还原这两个文件。 用二维数组和指针偏移都出现了错误。 #include "stdafx.h" #include #include #include #define N 2 // #define LINE 1000 // #define CULUMN 1000 struct file_heard { char filename[20]; int filelen; /* char filecontent[LINE][CULUMN];*/ char *connent; }f_heard[N] = {0}, f_end[N] = {0}; void file_open (FILE *fp ,int len, char name[20] ,char *p) { printf("Input filename: "); gets( name); if ((fp = (fopen(name ,"rb"))) == NULL ) { printf("Cannot open the file :%s ",name); exit(0); } rewind(fp); fseek(fp , 0L, SEEK_END); len = ftell(fp) +1 ; printf("%d ",len); fread(p , 1, len , fp); } void file_openw(FILE *fp, char wname [20]) { printf("Input filename: "); gets( wname); if ((fp = (fopen(wname ,"wb"))) == NULL ) { printf("Cannot open the file :%s ",wname); exit(0); } rewind(fp); } // void file_save(char str[LINE][CULUMN], FILE *fp) // // { // int i = 0; // char *p = NULL; // // fgets( p ,CULUMN + 1, fp); // while( p = NULL) // { // str[i++][0] = *p; // printf("%s ",*p); // printf("%s ",str[i]); // p = NULL; // fgets( p ,CULUMN -1, fp); // } // // // } int _tmain(int argc, _TCHAR* argv[]) { FILE *fp1 = NULL, *fp2 = NULL, *fp3 = NULL, *fp4 = NULL, *fp5 = NULL; char name3[20] = {0} , name4[20] = {0}, name5[20] ={0},* p3 = NULL; int n , len3 = 0; file_open( fp1, f_heard[0].filelen,f_heard[0].filename, f_heard[0].connent); // file_save( f_heard[1].filecontent, fp1); printf("%s%d%s ", f_heard[0].filename, f_heard[0].filelen,f_heard[0].connent); fclose(fp1); file_open( fp2, f_heard[1].filelen,f_heard[1].filename ,f_heard[1].connent); /* file_save( f_heard[2].filecontent, fp2);*/ fclose(fp2); file_openw( fp3 ,name3); for ( n = 0 ; n < 2 ; n++) { fwrite(&f_heard[n], f_heard[n].filelen ,1,fp3); } fclose(fp3); file_open( fp3 ,len3, name3,p3); file_openw( fp4 ,name4); file_openw( fp5 ,name5); fread(&f_end[0], f_heard[0].filelen ,1,fp3); fwrite(&f_end[0], f_heard[0].filelen , 1, fp4); fread(&f_end[1], f_heard[1].filelen ,1,fp3); fwrite(&f_end[1], f_heard[1].filelen , 1, fp5); fclose(fp3); fclose(fp4); fclose(fp5); return 0; } ` |
|
相关推荐
2个回答
|
|
至今没回复,自己都解决了
|
|
|
|
楼主,我现在做数据通信里的数据压缩部分,我想问一下就是基于labview的数据压缩如何编程实现,希望大神不吝赐教,万分感谢
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
836 浏览 0 评论
6340 浏览 0 评论
如何使用python调起UDE STK5.2进行下载自动化下载呢?
2836 浏览 0 评论
开启全新AI时代 智能嵌入式系统快速发展——“第六届国产嵌入式操作系统技术与产业发展论坛”圆满结束
3101 浏览 0 评论
获奖公布!2024 RT-Thread全球巡回线下培训火热来袭!报名提问有奖!
33230 浏览 11 评论
73648 浏览 21 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-3 22:41 , Processed in 0.385626 second(s), Total 44, Slave 35 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号