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

解決


サウ  2004-08-06 17: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-06 22:38:15  No: 10264  IP: 192.*.*.*

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

編集 削除
TtPIPICH  2004-08-06 22:42:41  No: 10265  IP: 192.*.*.*

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

編集 削除
TtPIPICH  2004-08-06 22:47:15  No: 10266  IP: 192.*.*.*

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

編集 削除
サウ  2004-08-10 18:41:37  No: 10267  IP: 192.*.*.*

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

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

編集 削除