PDA

Просмотр полной версии : Длинный STRING



Nazar
28.02.2011, 12:01
Подскажите как работать с длинными STRING (длиной около 700). Необходимо его разобрать по разделителям на части. Есть ли у кого опыт работы с библиотекой oscat320.lib?

Малышев Олег
28.02.2011, 14:05
Рекомендую работать с длинными строками через pointer to byte.
Если не секрет - а зачем Вам oscat ?

Nazar
02.03.2011, 06:58
Рекомендую работать с длинными строками через pointer to byte.
Если не секрет - а зачем Вам oscat ?

Делаю функциональный блок для чтения данных из файла (файл размером около 700 байт). В oscate320 есть функции для разбора STRING длиной более 255 (_STRING_TO_BUFFER; BUFFER_SEARCH; BUFFER_TO_STRING), которые как раз и используют разбор STRING по байтно. А какие есть альтернативы данной библиотеке?


Подскажите почему функция SIZEOF выдает постоянно 4 :mad: и как можно определить размер buffer?
buffer:POINTER TO ARRAY[0..600] OF BYTE;
SIZEOF(buffer);

Логвиненко Андрей
02.03.2011, 12:21
POINTER на что нибудь- это DWORD переменная.

Nazar
03.03.2011, 08:47
Вылезло еще одно :( .
При разборе STRING в буффер по байтно (_STRING_TO_BUFFER) и обратно (BUFFER_TO_STRING) теряюся два символа, на их месте стоит '$12' и ''. Что это значит?

Филоненко Владислав
03.03.2011, 09:38
POINTER на что нибудь- это DWORD переменная.

и? Это адрес памяти. Все нормально :)

Nazar
03.03.2011, 14:04
Программисты, помогите разобрать длинный STRING!!!!

Логвиненко Андрей
04.03.2011, 08:37
Чем могу- помогу.
Пример функции поиска заданной строки в области памяти

Nazar
04.03.2011, 19:19
Спасибо. Буду пробовать...:)

Nazar
08.03.2011, 13:04
Спасибо всем - все получилось. Кому надо - обращайтесь. :)

Как проще преобразовать код ASCII в символ (STRING)? :confused:
Сейчас для этого я использую функцию библиотеки oscat.