我有结构:
struct stek
{
char value;
struct stek *next;
};
为什么我可以这样做:
stek *p = 0;
这是什么意思?为什么为零?
答案 0 :(得分:2)
<强> tldr; 强> 因为0是有效的内存地址。
由于指针指向内存位置,表达式有效且p
指向内存地址0
答案 1 :(得分:1)
此处0
表示NULL
。在之前的C ++ 11中,0
可以用作NULL
,有时候它很模糊。目前C ++有nullptr
更有意义。
详细了解 NULL与nullptr之间的区别。