Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Копирование куска массива


Steel Ice ©   (2002-04-30 22:36:00) 

Вот такой вот вопросик. Вроде несложный.
Нужно скопировать кусок одного массива в другой.
Допустим вот у нас есть:
var
src:array[0..100] of byte;
dst:array[0..4095] of byte;

И мне надо 50 байтиков из массива srcперенести в массив dst.
Но вот так например:
for i:=0 to 50 do dst[i]:=src[i];
не катит. Ибо долго очень. Мне нужно именно перенести участок памяти. Потому что это только пример, на реале будут переносы по 2000-3000 байт за раз. И очень часто. Так что фором не катит чтоп не тормозило. Как бы это лучше всего сделать.
А еще чтобы можно было переносить со смещением. Тобишь чтбоы начинался массив src в массиве dst не с начала, а допустим с 37го элемента.

Зарание спасибо.


Steel Ice   (2002-04-30 23:03:00) [1]

Мне не нуна крутасти, мне нуна фунциклирование :)

2MBo: агромное сапасибо, разберуси...

2[891rpm]: Угу. Я и думал что указатели в общемто, но вот есть замечатльная такая фунция мув. Сойдет.


в общим спасибо всем :)


[891rpm]   (2002-04-30 22:53:00) [2]

Я думаю, что можно создать пару десятков потоков ;O)* и запихнуть процедуру присвоения...

Вообще-то, для такого рода операций обычно используют указателиили (что много круче) ассембленые вставки...

Надеюсь что помог...


MBo   (2002-04-30 22:47:00) [3]

move(src[37],dst[28],50*sizeof(byte));


Наверх

Титульная страница Поиск, карта сайта Написать письмо