Вниз
Скачать: 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.024 c
14-1101311752
Shadow-st
2004-11-24 18:55
2004.12.12
Языковая панель


3-1099041934
stud
2004-10-29 13:25
2004.12.12
dbchart delphi7


3-1099555085
Victor!
2004-11-04 10:58
2004.12.12
Как обойти дел. на ноль в JetSQL


14-1101285539
msguns
2004-11-24 11:38
2004.12.12
Одиночесво ?


1-1101818391
Chlavik
2004-11-30 15:39
2004.12.12
ActiveX - правильно обьявлены функции ???




   Наверх