- 平台:x86 Linux 3.2.0 (Debian 7.1)
- 编译器:GCC 4.7.2 (Debian 4.7.2-5)
我正在编写一个函数,该函数通过读取分配的内存部分以获取“随机”值来生成“随机”整数。这个想法是基于未初始化变量具有未定义值的事实。我最初的想法是使用 malloc() 分配一个数组,然后使用其未初始化的元素生成一个随机数。但是 malloc() 往往会返回 NULL 内存块,所以我不能保证有任何东西可以读取。所以我考虑读取一个单独的进程内存,以便几乎保证 NULL 以外的值。我目前的想法是以某种方式找到第一个有效的内存地址并从那里读取,但我不知道该怎么做。我尝试初始化一个指向 NULL 的指针,然后将其递增 1,但是如果我尝试打印引用的内存位置,则会发生分段错误。所以我的问题是如何读取单独的进程内存。除了读取它之外,我不需要对内存做任何事情。