Вниз
Скачать: CL | DM;

Копирование куска массива   Найти похожие ветки 

← →
Steel Ice   (2002-04-30 22:36) [0]

Вот такой вот вопросик. Вроде несложный.
Нужно скопировать кусок одного массива в другой.
Допустим вот у нас есть:
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го элемента.

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


← →
MBo ©   (2002-04-30 22:47) [1]

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


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

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

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

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


← →
Steel Ice   (2002-04-30 23:03) [3]

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

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

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


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



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.008 c
1-49939
BlackGrin
2002-05-03 19:41
2002.05.16
Canvas does not allow drawing


1-49972
nejest
2002-04-30 07:52
2002.05.16
Скролинг и выделения в StingGrid


3-49896
rvs
2002-04-22 08:21
2002.05.16
BatchMove - batCopy


3-49841
Fishka
2002-04-18 12:44
2002.05.16
InterBase и Gbak


3-49851
ЮРИЙ_К
2002-04-19 10:36
2002.05.16
Прверка существования поля в таблице.




   Наверх