16進数値を10進数値に変換するには?

解決


Msun  2005-11-06 20:02:14  No: 18474

教えてください。
16進数値で21を10進数の33に変換する関数ってあるのですか。(StrToIntとかIntToHexのような.....)


a  2005-11-06 22:01:20  No: 18475

StrToIntで  $つけたらいい。

showmessage(IntToStr(StrToInt('$ff')))

N進数→X進数  変換は
原理は簡単だから、
自分でfunction作るのもいいかもしれない。
5分もあればできるからね。


a  2005-11-06 22:07:02  No: 18476

uses StrUtils;

procedure TForm1.Button1Click(Sender: TObject);
 var s:string;
begin
  s :='10';
  s := ifthen(leftStr(s, 1)<>'$','$'+s,s);
  showmessage(IntToStr(StrToInt(s)))
end;


Msun  2005-11-06 23:44:16  No: 18477

勘違いしていました。Edit1.Textへ「21」とキー入力、StrToIntでバッファに取込むと十進数表記の#21となりますが、十進表記で#33となるようにしたいのですが.....


  2005-11-06 23:56:43  No: 18478

上にもかいてるように
$つけて StrToIntに  いれればいいだけだと思いますけど


  2005-11-06 23:59:51  No: 18479

ひょっとして$の意味がわからないのかな?

delphiでの
16進数の表記は

$数字です。

10進数は  そのまま  数字です。

なので  StrToInt('$'+Edit1.Text)
で16進数から10進数に変換されます。


Msun  2005-11-07 00:54:51  No: 18480

a,'あ'さんありがとうございました。
'21'と入力してアドレスアドレススイッチ21の端末機が、
'38'と入力すればそのアドレスの端末機が
応答するようになりました。アセンブラーでは簡単なことですが、Delphi初心者で苦労しています。又、投稿しますのでそのときもよろしくおねがいします。ありがとうございました。


インライン  2005-11-07 04:15:41  No: 18481

Delphiでもインラインアセンブリは使えるがな。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加