若在 C 程式中出現下列宣告:int a[10],*p=a; 則下列何者編譯時會出現型態不符之訊息?
Aprintf("%d",p==a[0]);正確答案
Bprintf("%d",p==&a[0]);
Cprintf("%d",*p==a[0]);
Dprintf("%d",p[0]==a[0]);
答案與詳解
p 是 int* (指標型態),a[0] 是 int (整數值)。指標與整數直接用 == 比較,編譯器會警告型態不符。這就是本題要抓的錯誤。
Examly 收錄 38 萬+ 道歷屆題目,每題都有像這樣的精選詳解。免費下載,立即開練。
