Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.08.17;
Скачать: CL | DM;

Вниз

packed record в строку   Найти похожие ветки 

 
IvanS   (2008-07-10 23:29) [0]

у меня есть
tpack = packed record
a, b, c, d: longword;
d, e, f, g: longword;
end;


каким образом это можно преобразовать в строку? т.е каждый байт в записи надо превратить в единую строку.


 
Юрий Зотов ©   (2008-07-10 23:37) [1]

> IvanS   (10.07.08 23:29)  

> каждый байт в записи надо превратить в единую строку.

Если Вы уверены, что вопрос задан точно, то прямо сейчас напишу код.

Но сначала просьба - подумайте. Ведь не хочется писать код, который никому не понадобится.


 
IvanS   (2008-07-10 23:52) [2]

a = $01010101
b = $02020202
c = $03030303
d = $04040404
....

строка: #$01#$01#$01#$01#$02#$02#$02#$02...

вот так нужно, я действительно плохо вопрос сформировал


 
Юрий Зотов ©   (2008-07-10 23:58) [3]

> IvanS

var
 S: string;
 R: TPack;
...
SetLength(S, SizeOf(R));
CopyMemory(@S[1], @R, SizeOf(R));


 
Anatoly Podgoretsky ©   (2008-07-11 00:37) [4]

Все равно и уточнение пока смутное.


 
Ega23 ©   (2008-07-11 00:50) [5]


> Юрий Зотов ©   (10.07.08 23:58) [3]


пока #00 не встретится?


 
umbra ©   (2008-07-11 00:53) [6]


> пока #00 не встретится?

с чего бы это?


 
Ega23 ©   (2008-07-11 01:01) [7]

a = $01010101
b = $02020202
c = $03030303
d = $04040404

А если a = $01000101?


 
umbra ©   (2008-07-11 01:03) [8]


> А если a = $01000101?

и что? копирование прервется?


 
Рамиль ©   (2008-07-11 08:56) [9]


> umbra ©   (11.07.08 01:03) [8]

Не прервется, но потом с этой строкой надо осторожно обращаться.


 
han_malign ©   (2008-07-11 09:19) [10]


> SetLength(S, SizeOf(R));
> CopyMemory(@S[1], @R, SizeOf(R));

SetString(S, PChar(@R), SizeOf(R));



Страницы: 1 вся ветка

Текущий архив: 2008.08.17;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.018 c
2-1215788028
GrieVeR-13
2008-07-11 18:53
2008.08.17
Событие OnTimer


2-1216024844
Раиса
2008-07-14 12:40
2008.08.17
Не возникает ошибка при удалении открытого документа (WORD)


2-1216099771
Пробежал
2008-07-15 09:29
2008.08.17
StringGrid


6-1192106535
GamerZone
2007-10-11 16:42
2008.08.17
Загрузка удаленного файла


1-1196746496
AndreyRu
2007-12-04 08:34
2008.08.17
Ожидание освобождения файла