以下はCでの私の単純なリンクリストです。私の質問は「headRef=&newNode;」にあります。これにより、セグメンテーション違反が発生します。次に、代わりに「* headRef=newNode;」を試しました。これにより、セグメンテーション違反の問題が解決されます。2行のコードは同じように機能しているように見えますが、一方がセグメンテーション違反を引き起こし、もう一方がそうではないのはなぜですか?前もって感謝します。
struct node{
int data;
struct node* next;
};
void Push(struct node** headRef, int data){
struct node* newNode = malloc(sizeof(struct node));
if(!newNode) return;
newNode->data = data;
newNode->next = *headRef;
headRef = &newNode;
return;
}