1. ホーム
  2. c

[解決済み] malloc(0)の意味とは?

2022-06-09 22:35:23

質問

私はちょうどこれを見ました のコードを参照してください。

artist = (char *) malloc(0);

...そして私は、なぜこのようなことをするのだろうと考えていました。

どのように解決するのですか?

仕様書によると malloc(0) は "ヌルポインタか、free()に正常に渡せるユニークなポインタのどちらかを返します。

これは基本的に、何も割り当てず、それでも心配なく free() の呼び出しに "artist" 変数を渡すことを可能にします。 実用的な目的のために、それはほとんど行うのと同じです。

artist = NULL;