民國111年 第2梯次 電腦軟體設計(JAVA)乙級 學科
第62題
對於同一C 或C++之程式而言,開發為64 位元之程式與32 位元之程式的比較,那些為錯誤?
題目
對於同一C 或C++之程式而言,開發為64 位元之程式與32 位元之程式的比較,那些為錯誤?
- (1) 32 位元之程式中使用字串指標(Po inter)儲存字串資料比使用字元陣列儲存相同字串資料所佔用之記憶體小
- (2) 字串資料部分,64 位元程式佔用比較大之記憶體
- (3) 程式指標佔用之記憶體由程式決定,與程式適用之位元數無關
- (4) 64 位元之程式其指標佔用之記憶體較大
官方答案
(1) 32 位元之程式中使用字串指標(Po inter)儲存字串資料比使用字元陣列儲存相同字串資料所佔用之記憶體小、(2) 字串資料部分,64 位元程式佔用比較大之記憶體、(3) 程式指標佔用之記憶體由程式決定,與程式適用之位元數無關
解析
指標所佔的位元組數由編譯平台的位址寬度決定:32 位元程式為 4 bytes,64 位元程式為 8 bytes,與程式設計者無關,因此選項3敘述錯誤、選項4正確。選項1錯誤:用指標存字串時,除了字元資料本身,還必須額外佔用指標空間,所以整體不會比直接使用字元陣列小。選項2錯誤:字串內容是字元序列,每個字元所佔的位元組數固定,字串資料量不因程式是 32 位元或 64 位元而變大,只有指標與部分對齊填充會增加。
AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。