主函数里的第一句什么意思,干什么用的?

img


主函数中第一句是什么意思,作用是什么,为什么把一个指针变成零

只能说这是一种良好的习惯。
如果指针没有赋初值就使用的话,会指向一个不确定的地址,破坏有用的单元的内容。
比如,int* p; 此时我们去解引用*p=0;显然不可行;当然这是最常见的错误;
再比如,指针一开始没有初始化为null,我们使用malloc失败,我们又该如何判断malloc分配内存失败了。malloc返回的就是一块地址
其次,当我们的场景更复杂时候,我们常常需要使用
if(p == NULL)
{
p = malloc();
}
这样的形式去申请。
或者我们析构了一块内存,也常常将指向这块内存的指针置为NULL,避免野指针。
所以初始化为NULL,是为了更清晰的使我们知道指针的指向

第一句和第二句可以合成一句,意思是创建一个头指针。单独的第一句其实没什么特别的意义,只是创建了一个空指针。

ListNode* head = new ListNode;