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

Вниз

Массив с данными.   Найти похожие ветки 

 
callback   (2006-12-13 20:38) [0]

Есть массив с данными "array of Byte", с например таким содержанием:
$12, $34, $56, $74, $65, $73, $74, $73, $74, $72, $69, $6E, $67, ...

И мне необходимо из этого массива считывать данные специальным образом:

Надо например считать из массива с начальной позиции Word - это $12, $34 = 4660.
А потом надо считать Byte с 3 элемента - это $56. А потом нужно считать с 4 элемента string длиною 10 символов - это "teststring".

Как такое осуществить?


 
Kolan ©   (2006-12-13 20:53) [1]

> Как такое осуществить?

Запрограммировать. Нужен цикл и мозги. С чем проблема пока не понятно.


 
Eraser ©   (2006-12-13 20:58) [2]

> [0] callback   (13.12.06 20:38)


> И мне необходимо из этого массива считывать данные специальным
> образом:

если этот "специальный образ" однообразен, т.е. повторяется, то нужно организовать цикл.

> Надо например считать из массива с начальной позиции Word
> - это $12, $34

i := 0;
w := MakeWord(a[i], a[i + 1]);


> А потом надо считать Byte с 3 элемента - это $56

b := a[i + 2];

> А потом нужно считать с 4 элемента string длиною 10 символов
> - это "teststring".

не совсем понял, что такое "4 элемента string длиною 10 символов" )) из byte в char можешь перевести ф-цией chr.


 
sniknik ©   (2006-12-13 22:09) [3]

procedure TForm1.Button1Click(Sender: TObject);
type
 TMasType = packed record
   Wrd : Word;
   Bte : Byte;
   Str1: array[0..9] of char;
   ...
 end;
var
 ByteArray: array[0..SizeOf(TMasType)-1] of byte;
 EnumArray: TMasType absolute ByteArray;
begin
 Move("1231234567890", ByteArray, SizeOf(TMasType));
 ...
 Label1.Caption:= EnumArray.Str1;
 ...
end;



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

Форум: "Начинающим";
Текущий архив: 2006.12.31;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.04 c
15-1165987596
balepa
2006-12-13 08:26
2006.12.31
OPC


15-1165511417
Карелин Артем
2006-12-07 20:10
2006.12.31
Мед осмотр или очередная галочка.


4-1155909771
Alex81
2006-08-18 18:02
2006.12.31
По процессу определить путь к файлу


4-1156283062
Андрей555
2006-08-23 01:44
2006.12.31
КАК определеить на сколько переместилась мышка?


9-1140680025
Fenix
2006-02-23 10:33
2006.12.31
Модели людей для дальнейшей их анимации.





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский