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

CHR($12) 不知道是啥意義?不知道要如產生$好用於chr()內?

 
g9221712
高階會員


發表:145
回覆:344
積分:162
註冊:2006-07-06

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-01-09 17:20:05 IP:220.134.xxx.xxx 訂閱
各位前輩:

不知道CHR($12) 不知道是啥意義? 因為硬體有用到這個,我猜是轉特殊字元,
不知道要如產生$好用於chr()內?

這個問題夠菜吧!

------
「人們所以覺得寂寞,是因為他們會築牆,卻不會搭橋。」
程式寫的越久,卻發現自己越來越不會寫程式!
Fishman
尊榮會員


發表:120
回覆:1949
積分:2163
註冊:2006-10-28

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-01-09 17:51:01 IP:210.65.xxx.xxx 未訂閱
The dollar-sign prefix indicates a hexadecimal numeral
CHR($12) = CHR(18)


Fishman
------
Fishman
g9221712
高階會員


發表:145
回覆:344
積分:162
註冊:2006-07-06

發送簡訊給我
#3 引用回覆 回覆 發表時間:2007-01-09 20:37:15 IP:220.134.xxx.xxx 訂閱
前輩:
我的的硬體程式範例為CHR($12) CHR($34) CHR($56) CHR($78);
而我用了一個自訂函數想轉換,但是這樣的轉法好像不對,不知道有無簡易的轉法
我搜尋版上的討論,很多都無法連結,不知道怎樣轉換最快!
HEX2INT
var
i : integer
s : string;
begin
s := '$' ThatHexString;
i := StrToInt(a);
end;

------
「人們所以覺得寂寞,是因為他們會築牆,卻不會搭橋。」
程式寫的越久,卻發現自己越來越不會寫程式!
Fishman
尊榮會員


發表:120
回覆:1949
積分:2163
註冊:2006-10-28

發送簡訊給我
#4 引用回覆 回覆 發表時間:2007-01-10 09:11:27 IP:210.65.xxx.xxx 未訂閱
Delphi 中似乎沒有 HexToInt 的函數,以下有幾個範例,你可以參考看看:
Delphi 的 StrToInt
function StrToInt(const S: string): Integer;
var
E: Integer;
begin
Val(S, Result, E);
if E <> 0 then ConvertErrorFmt(@SInvalidInteger, [S]);
end;


http://4programmers.net/Delphi/FAQ/Konwersja_liczby_heksadecymalnej_na_integer
function HexToInt(const Hex: String; Sign: Boolean = False): Integer;
var
Int, Code: Integer;
begin
Val('$' Hex, Int, Code);
if Code <> 0 then Result := 0 else
if Sign then Result := -Int else Result := Int;
end;


http://www.delphi.qs.pl/faq1.php3
function HexToInt(S : String) : Integer;
function HTI(C : Char) : Integer;
begin
if Ord(UpCase(c)) in [65..70] then result:=Ord(UpCase(C))-55 else
result:=StrToInt(C);
end;

var
x:integer;
begin
result:=0;
for x:=0 to length(s)-1 do
result:=(result HTI(s[length(s)-x])*round(intpower(16,x)));
end;


http://delphi.ktop.com.tw/board.php?cid=30&fid=73&tid=71104


Fishman

------
Fishman
g9221712
高階會員


發表:145
回覆:344
積分:162
註冊:2006-07-06

發送簡訊給我
#5 引用回覆 回覆 發表時間:2007-01-10 09:44:47 IP:220.134.xxx.xxx 訂閱
前輩感謝您的回覆:
我自己寫了函數
function hextoint(s: Integer): Integer; overload;
function hextoint(s: string): Integer; overload;
implementation
function hextoint(s: Integer): Integer; overload;
begin //$代表16進制
Result := StrToInt('$' trim(inttostr(s)));
end;
function hextoint(s: string): Integer; overload;
begin //$代表16進制
Result := StrToInt('$' trim(s));
end;
------
「人們所以覺得寂寞,是因為他們會築牆,卻不會搭橋。」
程式寫的越久,卻發現自己越來越不會寫程式!
系統時間:2024-05-18 5:47:56
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!