為函數名稱取得選擇正確的識別碼
C 和C 提供了幾個用於在運行時檢索活動函數名稱的識別碼: __PRETTY_FUNCTION__ 、 __FUNCTION__ 和__func__。本指南探討了這些標識符之間的差異,並提供了它們的使用指導。
__func__:
"__func__" 是 C99 引入的標識符,表示包含下列內容的字元陣列:函數的名稱。它在每個函數中隱式定義。在 C 中,func 是在 C 11 中引入的,提供了實現定義的字串。
__FUNCTION__:
"__FUNCTION__" 是一個預先定義的gcc 和 Visual C 等編譯器支援的標準擴充。但是,建議在支援的情況下使用 func,僅在 func 不可用時使用 FUNCTION。
__PRETTY_FUNCTION__:
「__PRETTY_FUNCTION__」是一個gcc 特定的擴展,類似於 __FUNCTION__。對於 C 函數,它顯示“漂亮”的名稱,包括簽名。 Visual C 有一個類似的擴充 __FUNCSIG__。
決定使用哪個識別碼:
選擇取決於編譯器支援和所需的函數名稱格式:
文件:
以上是我應該使用哪個 C/C 標識符在運行時獲取函數名稱?的詳細內容。更多資訊請關注PHP中文網其他相關文章!