免費開始練習
hce_nsysu 111年 計算機概論與程式設計

第 25 題

Which of the following C code is used to declare two pointers of integer?
  • A int *p,q;
  • B int *p,*q;
  • C int *(p,q);
  • D (int *) p,q;
  • E None of the above

思路引導 VIP

如果在同一行宣告中,我們想讓多位學生都領到「地址簿」而不是「筆記本」,而我們知道在名字前面加一個特殊符號就代表領到地址簿。那麼當我們列出一串名字時,是只需要在最前面加一個符號就能讓整排的人都領到,還是每位想要領地址簿的人名字前都要各自標記呢?

🤖
AI 詳解 AI 專屬家教

恭喜你正確答對了這題!這顯示你對 C 語言中指標宣告的語法細節掌握得非常紮實。這類題目雖然看似簡單,卻是許多初學者極易混淆的地方。

指標宣告的綁定規則

在 C 語言的變數宣告中,星號 * 是與「變數名稱」緊密綁定的,而不是與資料型別(如 int)結合。當我們在一行中同時宣告多個變數時,編譯器會獨立看待每一個變數的修飾符。因此,若要宣告兩個指標,必須寫成 int *p, *q;,確保 pq 前方都有星號。如果你選擇了選項 (A) int *p, q;,實際上只有 p 會被視為指標,而 q 則會被視為一般的整數(Integer)。

▼ 還有更多解析內容

🏷️ 相關主題

C 語言程式設計基礎與陣列記憶體配置
查看更多「計算機概論與程式設計」的主題分類考古題