PDA

View Full Version : در مورد تابع hextobin چطوری باید محتویات binnery را مشاهده کرد این کد را ببیند



ali reza omid ali
چهارشنبه 17 اسفند 1384, 09:17 صبح
در مورد تابع hextobin چطوری باید محتویات binnery را مشاهده کرد دراین کد را ببیند چطوری میشه در لیبل 2 ما باینری ببینیم
var
E: Extended;
//Make sure there is room for null terminator
Buf: array[0..SizeOf(Extended) * 2] of Char;
begin
E := Pi;
Label1.Caption := Format('E starts off as %.15f', [E]);
BinToHex(@E, Buf, SizeOf(E));
//Slot in the null terminator for the PChar, so we can display it easily
Buf[SizeOf(Buf) - 1] := #0;
Label2.Caption := Format('As text, the binary contents of E look like %s', [Buf]);
//Translate just the characters, not the null terminator
HexToBin(Buf, @E, SizeOf(Buf) - 1);
Label3.Caption := Format('Back from text to binary, E is now %.15f', [E]);
end;

MiRHaDi
چهارشنبه 17 اسفند 1384, 14:42 عصر
سلام
ابتدا کد شما را جهت خوانا شدن در قسمت کد قرار میدهم :


var
E: Extended;
//Make sure there is room for null terminator
Buf: array[0..SizeOf(Extended) * 2] of Char;
begin
E := Pi;
Label1.Caption := Format('E starts off as %.15f', [E]);
BinToHex(@E, Buf, SizeOf(E));
//Slot in the null terminator for the PChar, so we can display it easily
Buf[SizeOf(Buf) - 1] := #0;
Label2.Caption := Format('As text, the binary contents of E look like %s', [Buf]);
//Translate just the characters, not the null terminator
HexToBin(Buf, @E, SizeOf(Buf) - 1);
Label3.Caption := Format('Back from text to binary, E is now %.15f', [E]);
end;

خوب حالا میخواید محتویات Buf رو نشون بدید ! درسته :) ؟
اگر بافرتون رو از نوع PAnsiChar میگرفتید به راحتی میتونستید با یک := این کار رو انجام بدید :)
حالا هم با یک TypeCasting به راحتی انجام مشده
( نوع کد نوشتن و منطق برنامه نویسی شما شبیه برنامه نویسان C است نه دلفی :) برای همین به زبان خودتون پاسخ دادم :) )
بای