有没有办法检查指针是否已初始化?我有一个结构指针的结构
typedef struct foo { int* ptr1; int* ptr2; int* ptr2; ... int* ptr100; }
然后我的代码将地址分配给那些指针(内部循环).但在分配地址之前,我想检查指针是否已包含地址.我知道我可以使用NULL初始化每个指针,然后检查:
if(ptr1 == NULL) do something
但有没有办法写一些类似但没有初始化ptr的东西?
解决方法
未初始化的变量可以包含任何值.因此,无法确定变量是否未初始化,因为它看起来就像已经初始化的变量.确保变量初始化的唯一方法是显式地为您写入一个值(例如,NULL),就像您在问题中已经提到的那样.