Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.12.12;
Скачать: 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 вся ветка

Текущий архив: 2004.12.12;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.041 c
3-1100253177
Дырчик
2004-11-12 12:52
2004.12.12
Отображение поля в DBGride


4-1098889217
boban
2004-10-27 19:00
2004.12.12
Как заблокировать Print Screen ?


1-1101472948
Dush
2004-11-26 15:42
2004.12.12
Объявление процедур


14-1101322505
Style
2004-11-24 21:55
2004.12.12
Пользователи БиЛайна, зацените идею.


3-1100508460
neat
2004-11-15 11:47
2004.12.12
TDBLookupComboBox