Вниз
Скачать: 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.022 c
4-1099046847
Студент КНТУ
2004-10-29 14:47
2004.12.12
WIN API+ Монитор


14-1100981122
Piter
2004-11-20 23:05
2004.12.12
Почему ВЫ не используете клиент?


1-1101469896
барбос
2004-11-26 14:51
2004.12.12
TabOrder


14-1100666946
Megabyte-CeerCop
2004-11-17 07:49
2004.12.12
Потерял ветку про ламаразмы, а спостить нужно.


14-1100925769
Alex_Petr
2004-11-20 07:42
2004.12.12
Они просто издеваются !




   Наверх