民國106年 第2梯次 電腦軟體設計丙級 學科
第69題
在C 程式中,假設字串 A = " 123 " , 字串 B = " 4567 " ,則s t r l e n ( s t r c p y ( B , A )…
題目
在C 程式中,假設字串 A = " 123 " , 字串 B = " 4567 " ,則s t r l e n ( s t r c p y ( B , A ) ) 之值為何?
- (1) 4
- (2) 123
- (3) 3
- (4) 4567
官方答案
(3) 3
解析
strcpy(B, A) 會將字串 A 的內容(含結尾的 '\0')複製到 B 所指的記憶體,並回傳 B 的起始位址;因此後續 strlen 計算的是複製後 B 的內容。A 為 "123",共 3 個字元,故 strlen 回傳 3。選項 4 是 B 被覆寫前的原始長度,並非複製後的結果;選項 2 的 123 是字串內容而非長度;選項 1 的 4 也不是本題的計算結果。
AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。