民國112年 第2梯次 電腦軟體設計(C++)乙級 學科

第24題

對於C 程式的宣告char s[5][6]; char *p;,下列那一個正確?

題目

對於C 程式的宣告char s[5][6]; char *p;,下列那一個正確?

  1. (1) p=s[0][0];
  2. (2) p =s[2][4];
  3. (3) p=s;
  4. (4) p = *s;

官方答案

(4) p = *s;

解析

char s[5][6] 是二維字元陣列,s 在運算式中會衰減為指向一列(char[6])的指標,型別為 char (*)[6];*s 等同 s[0],取得第一個一維陣列,會再衰減為 char*,因此可指定給 char *p。第1項 s[0][0] 是單一字元 char,不能指定給指標;第2項 s[2][4] 同樣是 char;第3項 p=s 型別為 char (*)[6] 與 char* 不相容。故選第4項。

AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。

官方資料