欢迎光临散文网 会员登陆 & 注册

C/C++绝对内存读写

2023-07-05 10:51 作者:R_2147483647  | 我要投稿

按理来说如果我这样写:

 unsigned char* memory=(unsigned char*)0;

然后就可以通过读取和修改memory[xxx]实现对整块内存的读写


但实际上,做梦。 

操作系统会阻止你想干的事情

本来在0x0000处的内存变成了0x9b6044

所以,但凡你在操作系统上写了type* var=(type*)address;不论你的数值是多少操作系统都会强行改变这一数字;而且越界访问会造成程序崩溃


所以你只能老老实实的这样

int a[1000];或者int *a=malloc(sizeof(int)*1000),没有操作系统你怎么写程序

C/C++绝对内存读写的评论 (共 条)

分享到微博请遵守国家法律