C语言中的*p = v 和 p = &v

int v = 2;
    
int *p;

*p = v;
p = &v;    // 推荐使用这个,即使p等于NULL,也不会报错。
// 这两句是等效的。

注意:这里的不能赋值为NULL,因为NULL的地址为x0,无指向的,相当于p指向释放的内存,即p指向的对象已经不存在,所以 *不能给已经释放的内存变量赋值*。

推荐阅读更多精彩内容