全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1278
推到 Plurk!
推到 Facebook!

SetLength的疑問

答題得分者是:ccchen
kunying
一般會員


發表:17
回覆:28
積分:19
註冊:2002-03-14

發送簡訊給我
#1 引用回覆 回覆 發表時間:2002-11-18 03:15:26 IP:211.74.xxx.xxx 未訂閱
var ss : array of byte; begin showmessage(IntToStr(sizeof(ss))); showmessage(inttostr(length(ss))); setlength(ss, 255); showmessage(IntToStr(sizeof(ss))); showmessage(inttostr(length(ss))); end; 想請問為何show 出來是 4、0、4、255 小弟一直以為是 4、0、255、255 可以幫我解答疑惑嗎。 謝謝。 ________________________ 「有時候你以為天要塌下來了,其實是因為你站歪了!」
------
________________________
「有時候你以為天要塌下來了,其實是因為你站歪了!」
ccchen
版主


發表:61
回覆:940
積分:1394
註冊:2002-04-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2002-11-18 07:42:21 IP:61.219.xxx.xxx 未訂閱
ss是一個pointer, 當然只有4個byte(實際上是一個integer, 代表記憶體中之某一位置) setlength(ss, 255);配置了255byte之記憶體, 然後將此塊記憶體之位置填到ss中.
andersonhsieh
版主


發表:33
回覆:531
積分:439
註冊:2002-06-10

發送簡訊給我
#3 引用回覆 回覆 發表時間:2002-11-18 11:54:46 IP:211.20.xxx.xxx 未訂閱
引言: var ss : array of byte; begin showmessage(IntToStr(sizeof(ss))); 這裡抓出的是這一個ARRAY POINT的長度所以是4 showmessage(inttostr(length(ss))); 這裡抓出的是這一個ARRAY的長度所以是0 setlength(ss, 255); showmessage(IntToStr(sizeof(ss))); 這裡抓出的是這一個ARRAY POINT的長度所以是4 showmessage(inttostr(length(ss))); 這裡抓出的是這一個ARRAY的長度所以是255 end; 想請問為何show 出來是 4、0、4、255 小弟一直以為是 4、0、255、255 可以幫我解答疑惑嗎。 謝謝。 ________________________ 「有時候你以為天要塌下來了,其實是因為你站歪了!」
@@~~飛翔在天際的精靈~~@@
------
@@~~飛翔在天際的精靈~~@@
kunying
一般會員


發表:17
回覆:28
積分:19
註冊:2002-03-14

發送簡訊給我
#4 引用回覆 回覆 發表時間:2002-11-18 16:08:32 IP:61.63.xxx.xxx 未訂閱
感謝,二位版主的觀念指正。 謝謝。 ________________________ 「有時候你以為天要塌下來了,其實是因為你站歪了!」
------
________________________
「有時候你以為天要塌下來了,其實是因為你站歪了!」
系統時間:2024-05-09 5:55:10
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!