这些C指针操作会导致问题吗?

Alb*_*ore 1 c theory pointers lvalue dereference

让我说我得到了:

char *p = NULL;
Run Code Online (Sandbox Code Playgroud)

我确定这个会出现问题,因为我要取消引用一个NULL指针:

*p = 16;
Run Code Online (Sandbox Code Playgroud)

另一方面,我认为这个可以,因为我得到*p的地址NULL本身不是:

char **pp = &p;
Run Code Online (Sandbox Code Playgroud)

在这两种情况下我都是对的吗?

MBy*_*ByD 5

是的,你是.虽然p的值为NULL,但它仍然具有有效地址,因此您可以传递其引用.