如何检查分配的内存是否已初始化

Ter*_* Li 3 c pointers initialization dereference

我暴露在指针int* i中,我只知道它的内存被分配,但我不确定它是否已被初始化为某个整数.

如果我试图顺从它,会发生什么?换句话说,我应该如何检查它是否已初始化?如果不是,我想为该地址分配一个整数值; 否则我什么都不做.

小智 5

定义"初始化".总会有一些值,并且你无法判断该值是垃圾还是整数,因为任何32位垃圾都会产生一些价值.你可以取消引用它,没问题.