0
の次のポインタを変更する:C:Cにリストを与えられたリスト
struct listNode
{
int val;
struct listNode *nextPtr;
};
typedef struct listNode ListNode;
typedef ListNode *ListNodePtr;
場合、最後の項目(*sPtr
)へのポインタが与えられたリストに新しい項目を挿入する過程で、そう新しいノード、私はポインタを変更したい*sPtr
それは新しいノードを指して、新しいノードを最後に作る、それは以下のようにこれを書くのは正しいですか?
ListNodePtr newPtr;
newPtr=malloc(sizeof(ListNode));
if(newPtr!=NULL)
{
newPtr->val=whatever;
newPtr->nextPtr=NULL;
*sPtr->nextPtr=newPtr;
*sPtr=*sPtr->nextPtr;
}
'* sPtr-> nextPtr' ==>'(* SPTR) - > nextPtr'、それ以外の場合はメンバーを間接参照します。 – mch
[typedefポインターはいいですか?](https://stackoverflow.com/questions/750178/) - 短い答えは「いいえ」です。 –
試してみましたが失敗しましたか? –