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

Опять 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 вся ветка

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



Память: 0.46 MB
Время: 0.021 c
14-1100909165
Soft
2004-11-20 03:06
2004.12.12
Письмо в госдуму


4-1099235634
Владимир Березин
2004-10-31 18:13
2004.12.12
Вопрос о стилях окон


14-1100852166
msguns
2004-11-19 11:16
2004.12.12
"Потрепанный орешник"


1-1101249250
Кто---то
2004-11-24 01:34
2004.12.12
Как отследить где именно возникает утечка памяти ?


14-1101162069
vecna
2004-11-23 01:21
2004.12.12
Пелевин.




   Наверх