現時点で私が持っている
void clistDeleteNode(clist_t *list,cnode_t **pnode) {
cnode_t *node=*pnode;
/* stuff done with node here, removed for clarity */
free(*pnode);
*pnode=0;
}
で呼び出されます
clistDeleteNode(list,&aNode);
この関数は、解放された後、エンド ユーザー ポインターを自動的に NULL にします。デバッグとリーク チェックが容易になるため、これを行います。
* & *aNodeを使用せずに変更するなど、関数へのポインターを渡すよりエレガントな方法はありますか? (エンドユーザーの観点から)