Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2008.08.17;
Скачать: [xml.tar.bz2];

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.048 c
2-1216031084
small
2008-07-14 14:24
2008.08.17
TXPMAnifest


2-1216068588
DJ_UZer
2008-07-15 00:49
2008.08.17
как програмно нажать на клавиши


2-1215761892
Костик
2008-07-11 11:38
2008.08.17
Помогите написать "Уведомлятель"


4-1194264584
msn777
2007-11-05 15:09
2008.08.17
Cогласовать вызов из разных потоков WriteFile ReadFile FilePointe


1-1196705497
Dib@zol
2007-12-03 21:11
2008.08.17
PopUp Menu + Tray





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский