メモリ確保したポインタを解放した後NULLで初期化する関数myfreeを作りたいのですが、
以下のようにすると初期化されないので

void *myfree(void *p)
{
free(p);
p=NULL;
return;
}

仕方なく以下のようにNULLを返してますが、p = myfree(p)のようになり美しくありません
もっとスマートな方法はないでしょうか?

void *myfree(void *p)
{
free(p);
return NULL;
}