首頁 >後端開發 >C++ >我可以在 C 標識符中使用下劃線而不違反標準嗎?

我可以在 C 標識符中使用下劃線而不違反標準嗎?

Linda Hamilton
Linda Hamilton原創
2024-12-28 21:25:12594瀏覽

Can I Use Underscores in C   Identifiers Without Breaking the Standard?

C 識別符中可以使用底線嗎?

C 採用某些約定來命名成員變量,例如在它們前面加上前綴像「m_」這樣的字元將它們與局部變數和參數區分開來。但是,如 .NET 等其他框架中所見,使用下劃線作為前綴會引發有關其在 C 標準中的有效性的問題。

管理底線使用的規則

依C標準,以下規則適用於底線的使用識別碼:

保留範圍

  • 以下劃線開頭後跟大寫字母或包含下劃線的名稱保留用於任何範圍的實作。

全球命名空間

  • 以下劃線開頭的識別碼保留給全域命名空間。

std 命名空間

  • std 命名空間中的所有內容都被保留,包括

C99限制

雖然不直接適用於C ,但C99 標準進一步限制下劃線的使用:

  • 以下劃線開頭後跟大寫字母的標識符保留用於任何
  • 以下劃線開頭的識別碼保留為檔案範圍識別碼。

其他限制

  • 以下劃線開頭的識別碼通常不鼓勵使用。
  • 雙底線應完全避免 (__)。
  • 以 _t 結尾的識別碼由 POSIX 標準保留用於其他類型名稱。

POSIX 標準保留識別碼

POSIX標準也保留了許多可能與正常程式碼使用衝突的標識符,包括以前綴開頭的標識符「E」、「is」、「to」和「LC_」

結論

雖然在技術上允許在C 標識符中使用下劃線,但請遵守規則建議上述概述以避免潛在的衝突和混亂。

以上是我可以在 C 標識符中使用下劃線而不違反標準嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn