博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
简单的内存控制
阅读量:6906 次
发布时间:2019-06-27

本文共 1309 字,大约阅读时间需要 4 分钟。

1、将一个的exe文件读取到内存中,并返回读取后在内存中的地址

  我写了一个c++的helloworld程序。然后通过文件流观察大小。

1 #include
2 void main() 3 { 4 FILE* fp=NULL; 5 int f1; 6 fp=fopen("C:/Users/newen/Desktop/hellow.exe","rb+"); 7 fseek(fp,0,SEEK_END); 8 f1=ftell(fp); 9 fclose(fp);10 printf("%d\n",f1);11 12 }

 修改完后结果(与winhex对比完全相同)

 代码部分。

1 #include
2 #include
3 #include
4 void main() 5 { 6 FILE* fp=NULL; 7 int f1; 8 char *p=NULL; 9 int i=0;10 char ch=0x00;11 fp=fopen("C:/Users/newen/Desktop/hellow.exe","rb+");12 fseek(fp,0,SEEK_END);//定位到文件末尾13 f1=ftell(fp);14 15 p=(char*)malloc(f1);//动态分配内存16 memset(p,0,f1);//内存初始化17 18 fseek(fp,0,SEEK_SET);19 for(i=0;i

 

 2、将内存中的数据存储到文件中,双击打开,看能否使用

1 #include
2 #include
3 #include
4 void main() 5 { 6 FILE* fp=NULL; 7 FILE* fp2=NULL; 8 int f1; 9 char *p=NULL;10 int i=0;11 char ch=0x00;12 fp=fopen("C:/Users/newen/Desktop/hellow.exe","rb+");13 fseek(fp,0,SEEK_END);//定位到文件末尾14 f1=ftell(fp);15 16 p=(char*)malloc(f1);//动态分配内存17 memset(p,0,f1);//内存初始化18 19 fseek(fp,0,SEEK_SET);20 for(i=0;i

运行成功

 

转载于:https://www.cnblogs.com/zimudao/p/9462433.html

你可能感兴趣的文章
SCOM2012功能测试(14)—创建.NET应用程序性能监控
查看>>
我的友情链接
查看>>
IEnumerable和IEnumerable<T>接口
查看>>
重定向redirect与跳转forward区别
查看>>
CentOS7之Rsync+Inotify架构实现实时同步文件和文件夹
查看>>
linux日志管理
查看>>
A.约数个数的和
查看>>
BZOJ1041:[HAOI2008]圆上的整点(数论)
查看>>
c# small tips
查看>>
双色球
查看>>
git 添加tab补全
查看>>
web.xml配置
查看>>
个人作业——软件工程实践总结作业(天亮了)
查看>>
修改dedecms中某个页面ueditor的宽度
查看>>
String为什么要设置成Final类型
查看>>
生成XML文件,并保存到本地文件
查看>>
[C++]const、typedef联合使用注意
查看>>
JavaScript引用类型之Array数组的栈方法与队列方法
查看>>
银行转账亲测
查看>>
上海租房攻略
查看>>