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

ASCII碼轉16進制碼出錯

答題得分者是:supman
zxy666666
中階會員


發表:108
回覆:150
積分:86
註冊:2005-01-14

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-04-18 09:42:37 IP:219.130.xxx.xxx 未訂閱
大家好! 請問一下,ASCII碼轉換為16進制數.如0-->30;   1-->31... A-->41 我這樣寫可以:  Label1.Caption := IntToHex(ord('0'),2);  // 30 但是  Label1.Caption := IntToHex(ord(Edit1.text),2); 注:Edit1.text := '0' ; 編譯時出現錯誤: [Error] Incompatible types 請問如何解決? '0'與Edit1.text不都是字符型嗎?怎麼不可以用啊? 不好意思,新手上路,請大家指導一下吧,感謝!
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-04-18 09:51:47 IP:202.39.xxx.xxx 未訂閱
改成如下試試:
 Label1.Caption := IntToHex(Ord(Edit1.Text[1]), 2);
-- 分擔可以輕省, 分享帶來喜樂!
supman
尊榮會員


發表:29
回覆:770
積分:924
註冊:2002-04-22

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-04-18 09:54:55 IP:61.70.xxx.xxx 未訂閱
您好: 因為Ord是抓'0'的ascii,而edit.text是個字串因此無法轉換. 以下範例讓您參考一下 procedure TForm1.Button1Click(Sender: TObject); var c:char; begin c:=Edit1.Text[1];; Label1.Caption := IntToHex(ord(c),2); end; 發表人 - supman 於 2005/04/18 09:58:59
zxy666666
中階會員


發表:108
回覆:150
積分:86
註冊:2005-01-14

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-04-18 10:15:07 IP:219.130.xxx.xxx 未訂閱
感謝hagar兄,supman大大的解答 謝謝!
系統時間:2024-05-18 4:48:10
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!