C および C の関数名マクロ
C および C では、現在の関数の名前にアクセスするためにいくつかのマクロが使用できます。これらのマクロには、__func__、__FUNCTION__、__PRETTY_FUNCTION__ が含まれます。
func
C99 で定義され、C 11 に採用された func は暗黙的に宣言された文字配列変数ですこれは、囲んでいる関数の名前を保持します。これは、装飾のない関数名を提供するシンプルで軽量なオプションです。
FUNCTION
FUNCTION は先行標準です特定のコンパイラでサポートされている拡張子。その動作は func__ に似ていますが、公式言語標準の一部ではありません。移植性の理由から、利用可能な場合は __func を使用することをお勧めします。
PRETTY_FUNCTION
PRETTY_FUNCTION は GCC-関数の「きれいな」名前を提供する特定の拡張子。その署名。以前のバージョンとは異なり、C では引数の型を含む完全な関数プロトタイプを取得するのに主に役立ちます。
Documentation
func は C99 に文書化されています。標準、セクション 6.4.2.2/1。 FUNCTION は正式には文書化されていませんが、通常はコンパイラー固有の文書に含まれています。 PRETTY_FUNCTION については、GCC ドキュメント ページ「文字列としての関数名」に記載されています。
各マクロをいつ使用するか
マクロの選択は、以下によって異なります。特定の要件:
以上がC および C で関数名にアクセスするために `__func__`、`__FUNCTION__`、および `__PRETTY_FUNCTION__` のいずれかを選択する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。