integerをバイナリにするには?

解決


サウ  2004-08-07 02:44:22  No: 10263  IP: [192.*.*.*]

こんにちは  お世話になっています。

Integerの整数をバイナリにしようとし悩んでいます。
HexToBinをかけた際に取得したHexが2桁になると
はじめの桁しか認識されず、以下の場合16と同じ結果になってしまいます。
なので255まではうまくいきます。
何かマヌケなことをにしているのでしょうか?
どなたか、よければご教授ください。

ソースは以下のような感じです。
    
var

  int        : integer;
  intCnt     : integer;
  pInt       : pointer;
  pbuff      : pointer;
  str        : string;

begin

   GetMem(pbuff, 4);
   GetMem(pInt, 4);

   int := 256;
   str := LowerCase(inttoHex(int, 4));
   StrPCopy(pInt, str);
   HexToBin(pInt, pbuff, SizeOf(pInt));
   
   //確認
   str := PChar(pbuff)^;

end;

編集    削除
TtPIPICH  2004-08-07 07:38:15  No: 10264  IP: [192.*.*.*]

>str := PChar(pbuff)^;
話がずれますが、
PCharではなくCharでは?

編集    削除
TtPIPICH  2004-08-07 07:42:41  No: 10265  IP: [192.*.*.*]

すみません。まちがえました。
ほんとすみません

編集    削除
TtPIPICH  2004-08-07 07:47:15  No: 10266  IP: [192.*.*.*]

http://leed.issp.u-tokyo.ac.jp/~takeuchi/delphi/article/032/032720.html
こちらにIntToBinがあります

編集    削除
サウ  2004-08-11 03:41:37  No: 10267  IP: [192.*.*.*]

TtPIPICHさん  ありがとうございました。

解決しました。  ありがとうございました。

編集    削除