小编use*_*526的帖子

禁用malloc中的随机性

我正在运行以下简单的C程序:

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char** argv){
  void *p = malloc(4);
  fprintf (stderr, "p==%p\n", p);
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

不同的运行给出不同的结果

p == 0x101c010

那么:p == 0x1ad9010

那么:p == 0xe77010

所以.

我记得,过去malloc是完全确定的.所以可能从某个版本开始,malloc会添加一些随机性.我现在在Ubuntu上使用gcc-4.6.3.

有没有办法消除这种随机性?

c c++ malloc

5
推荐指数
2
解决办法
503
查看次数

标签 统计

c ×1

c++ ×1

malloc ×1