Форум: "Потрепаться";
Текущий архив: 2004.12.12;
Скачать: [xml.tar.bz2];
ВнизОпять Pointer Найти похожие ветки
← →
Undert © (2004-11-25 19:30) [0]Есть Ptr1, есть Ptr2, есть обе размерности, как сделать данные Ptr3 = данные ptr1 + данные ptr2
← →
Alexander Panov © (2004-11-25 19:32) [1]Всё зависит от типа данных, на которые указывают Ptr
← →
Undert © (2004-11-25 19:33) [2]Хммм....
GetMem(Ptr1, BufSize1)
GetMem(Ptr2, BufSize2)
оба
← →
Суслик © (2004-11-25 19:35) [3]
> [2] Undert © (25.11.04 19:33)
и что?
какие данные харнятся в областях, на которые указывают указатели?
← →
jack128 © (2004-11-25 19:37) [4]GetMem(Ptr3, Ptr1DataSize + Ptr2DataSize);
move(Ptr1^, Ptr3^, Ptr1DataSize);
move(Ptr2^, Pointer(Integer(Ptr3) + Ptr1DataSize)^, Ptr2DataSize);
← →
Undert © (2004-11-25 19:38) [5]jack128 ©
Спасибо!
← →
Alexander Panov © (2004-11-25 19:39) [6]Ну если и ддлина данных исзвестна, то никаких проблем:
Ptr3 := AllocMem(BufSize1+BufSize1);
move(Ptr1^,Ptr3^,BufSize1);
PtrTmp := Pointer((Integer(Ptr3)+BufSize1);
move(Ptr2^,PtrTmp^,BufSize2);
← →
Суслик © (2004-11-25 19:42) [7]так, это не сложение, которое обычно обозначается заком "+", а конкатенация :))
← →
Undert © (2004-11-25 19:46) [8]Спасибо всем :)
Страницы: 1 вся ветка
Форум: "Потрепаться";
Текущий архив: 2004.12.12;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.037 c