bjt123 发表于 2011-12-23 19:15:41

关于动态内存

#include <stdio.h>
#include <stdlib.h>
int main()
{
    int *blood = (int*) malloc( sizeof(int));   /*申请一个4字节内存,用来存放血址 */
    *blood = 100;   
        printf( "%d\n", *blood );
       
    while( scanf("%d",blood) )
    {
      printf( "\n%d", *blood );
    }


    free(blood);
    return 0;
}


我想用以上代码模拟动态内存。但为什么每次申请地址都是一样的?如何弄成不一样的呢?

bjt123 发表于 2011-12-24 12:45:49

我想看看游戏血量的动态地址是怎么实现的。一般的说法是 血址申请的是局部变量。所以每次加载的地址都不一样。但我用上面程序试验的话,本机上运行的话,血地址每次运行都是不变的

果粒 发表于 2011-12-25 18:07:09

回复 2# bjt123


    你的理解完全错误
既然是动态申请,只要复合满足申请大小成功的内存地址区间,都可以,你这个一样是因为这块内存一直没被使用。

bjt123 发表于 2011-12-26 13:52:10

回复 3# 果粒


    请问有什么良方,模拟游戏血址的动态内存吗? 比如 这种[[[[[[[+16]+c0]+34]+2c4]+118]+0]+1c]+108
页: [1]
查看完整版本: 关于动态内存