我有一个指针,默认情况下它带有NULL然后它等待某个事件并在事件发生时获取一个值,稍后我将指针释放到其他地方但即使在释放指针之后我也没有将其设为 NULL所以它仍然保持引用相同的内存位置,我知道下一个 malloc 调用可能会将该内存块分配给其他一些内存请求!
pointer_type *p = NULL;
while (process_get_wakeup(//some logic//)) {
while ((qelem = (void*)process_dequeue(//some logic//)) != NULL) {
p = (pointer_type *)qelem;
}
.
.
//goes into a loop of calls where free(p) is also done!
.
.
//Printing value of p as %p gives this : 0xFF00000000
编辑:我已经知道它不是我们应该如何做的,我不能指望保留与现在可能用于其他东西相同的值,但我想知道的是为什么只有一个特定的值p被我看到了!
这个值:0xFF00000000是否呈现任何特殊含义?