線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1198
推到 Plurk!
推到 Facebook!

請教指標問題...

尚未結案
Sarick
一般會員


發表:14
回覆:19
積分:6
註冊:2004-01-19

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-07-05 20:23:31 IP:210.202.xxx.xxx 未訂閱
請問各位前輩, 下面這Code 代表什麼意思ㄋ?? char CC_L = 0x32; char CC_H = 0x00; long CC; *(&CC) = CC_L; *(&CC 1) = CC_H; 感激不盡!!
dllee
站務副站長


發表:321
回覆:2519
積分:1711
註冊:2002-04-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-07-05 21:37:38 IP:211.76.xxx.xxx 未訂閱
請問您的 Code 是從書上來的還是現有程式呢? 因為這個 Code 是有 BUG 的...    char CC_L = 0x32; char CC_H = 0x00; long CC;     以上三行應該是不需要解釋吧 ,只是單純的宣告變數及給初始值。 *(& href="http://www.ViewMove.com" target="blank">視動科技 VMASK - ViewMove Automation Software Kernel 發表人 - dllee 於 2004/07/05 21:39:59
------
http://www.ViewMove.com
richtop
資深會員


發表:122
回覆:646
積分:468
註冊:2003-06-10

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-07-05 21:41:28 IP:211.76.xxx.xxx 未訂閱
Sarick 您好: &(變數名稱):表示取得該變數存放在記憶體中的位址。 所以任何變數所傳回的記憶體位址資料(值可以不同)的長度都是一樣,也就是該變數所存放的位址。 *(記憶體位址):表示取得自該記憶體位址算起,某變數儲存資料長度範圍內的值。 所以除了起始記憶體位置外,還要告知compiler是要提取哪種型態的變數? *(&CC):先取得CC的位址,再讀取該位址的值。這就好像要把值存入CC的第一個位元組中。 不過,當使用*(位址)時,我們並沒有告知complier是要讀取什麼樣長度的資料,所以理論上compiler會依其內定的資料型態去讀取資料,但不見得是我們要的。因此一個比較精確的方法是把該位址所指的資料型態明確給定: *( (char *) &CC ):此時就會把char形態的資料填入CC變數的第一個位元組中。 綜合上面的說明,可以知道 char CC_L = 0x32; char CC_H = 0x00; long CC; *(&CC) = CC_L; *(&CC 1) = CC_H; 程式碼的用意就是要把CC_H,CC_L別填入CC的low word的高,低位元組。 只是這樣的寫法不夠精確,建議改成: *((char*) &CC ) = CC_L; *((char*) &CC 1) = CC_H; // (char*)&CC 1:指向下一個char的位址。 另外在 C Builder 6 中,long的長度是4-bytes,所以上述的寫法不儘完善。 在Intel的處理器中,資料的存放規則是:(以兩個位元組為例) 低位元組放低位址,高位元組放高位址。 RichTop 敬上
Sarick
一般會員


發表:14
回覆:19
積分:6
註冊:2004-01-19

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-07-06 09:50:43 IP:210.202.xxx.xxx 未訂閱
 To dllee 前輩 ,  您說ㄉ真是太詳細ㄌ.    To richtop 前輩 ,   您也功力深厚ㄋ!!     只是兩位都對小弟都有恩...這分數..怕會質化二位..真難做人     
richtop
資深會員


發表:122
回覆:646
積分:468
註冊:2003-06-10

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-07-06 10:28:40 IP:211.76.xxx.xxx 未訂閱
Sarick 你也太可愛了! 當然是把分數給先回答的dllee版主囉! 反正解決了問題最重要! 別再難做人了! 不曉得以後可不可以將Delphi K.Top系統設成同時給多人分數?開玩笑的啦! RichTop 敬上
Sarick
一般會員


發表:14
回覆:19
積分:6
註冊:2004-01-19

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-07-06 10:31:03 IP:210.202.xxx.xxx 未訂閱
對不住dllee 大大, 小弟想ㄌ一下,dllee大大教小弟理論, richtop大大教小弟實做(或許是比較接近小弟需求) 小弟還是斗膽將這分給richtop大大. Anyway ,非常感謝兩位高手
Sarick
一般會員


發表:14
回覆:19
積分:6
註冊:2004-01-19

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-07-06 10:35:00 IP:210.202.xxx.xxx 未訂閱
richtop大大這樣說也有道理... 先回答ㄉ本就應該... 如果richtop大大不嫌,小弟就不再多疑嚕!!
系統時間:2024-04-26 14:47:57
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!