LONGEPASS
數位電子/程式語言/Q81
中等
正確率 -
Q81.

C 語言中,下列何者是有效的識別字(identifier)?

數位電子 · 甲級 · 程式語言 · Q81

難易度分析

3 / 5

題目要求判斷多個選項的正確性,需理解識別字允許的字元類別及首字符限制,同時辨別常見陷阱(如以數字開頭或特殊符號),這使得評估難度在普通以上。

正確答案 (複選):①, ④

  • ① _name:底線開頭是 C 語言允許的識別字命名方式,編譯器會將其視為合法符號名稱,常見於系統標頭檔的內部巨集或變數命名慣例。
  • ④ my_name:字母開頭且僅含字母與底線完全符合 C 語言識別字規範,是實務上最推薦的蛇形命名法 (snake_case) 寫法,可讀性佳且相容所有編譯器。

錯誤選項解析

  • ② 1_name:以數字開頭違反 C 語言識別字規則,編譯器會將其誤判為數值常數而非變數名稱,正確做法應以字母或底線作為起始字元。
  • ③ #name:井字號 (#) 在 C 語言中是前置處理器指示詞的專用符號(如 #include、#define),不允許出現在識別字內,會導致語法錯誤。
Learning Tip

"C 語言識別字的三大鐵律:僅能使用英文字母、數字、底線,且首字不可為數字。常考陷阱包含混淆特殊符號(如 @、#、$)的合法性,以及將關鍵字 (keyword) 當作識別字使用。實務上建議避免以底線開頭加大寫字母的命名(如 _Name),因該格式保留給編譯器內部使用,可能引發未定義行為。"

學員答題分佈

①_name0%
②1_name0%
③#name0%
④my_name0%

此答題分佈是根據學員在 LongePass 模擬考等實際作答紀錄計算而成。與考友分享這道歷屆試題與詳細解析!

相似類型題目