Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.07.12;
Скачать: CL | DM;

Вниз

Как строку short *s=(short*)buffer можно перевести на делфи?   Найти похожие ветки 

 
Dr.Andrew   (2009-05-20 20:45) [0]

Добрый вечер,

Как эту конструкцию можно перевести на делфи?

void *buffer
short *s=(short*)buffer;


Спасибо.


 
Сергей М. ©   (2009-05-20 21:06) [1]

var
 buffer: Pointer;
 s: PSmallInt;
..
 s := buffer;


 
palva ©   (2009-05-20 21:07) [2]

Может, так заработает:

var
   buffer: Pointer;
   s: PSmallInt;
...
begin
...
   s := PSmallInt(buffer);


 
palva ©   (2009-05-20 21:09) [3]

Это да, преобразовывать не нужно. Пойнтеры друг друга и так поймут.


 
Сергей М. ©   (2009-05-20 21:10) [4]


> palva ©   (20.05.09 21:07) [2]


Оба типа - указательные, явное приведение типа тут ни к чему, компилятор сам сообразит.


 
Dr.Andrew   (2009-05-20 21:18) [5]

Так все же правильно - s := PSmallInt(buffer); или просто s := buffer;?

Спасибо.


 
Сергей М. ©   (2009-05-20 21:20) [6]


> Dr.Andrew   (20.05.09 21:18) [5]


И так и сяк правильно.
Но приведение типа здесь лишнее телодвижение.


 
Dr.Andrew   (2009-05-20 21:25) [7]

Спасибо за помощь.



Страницы: 1 вся ветка

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

Наверх




Память: 0.48 MB
Время: 0.016 c
2-1242884041
Int23
2009-05-21 09:34
2009.07.12
Не работает Cocreateinstance


2-1242827643
Joy_25
2009-05-20 17:54
2009.07.12
работа с Word: выделение жирным шрифтом участков текста


2-1242753465
AV_Kit
2009-05-19 21:17
2009.07.12
Эмуляция служебных клавиш


2-1242710159
Sw
2009-05-19 09:15
2009.07.12
Правое выравнивание текста в компоненте Combobox


2-1242740449
Dmitry
2009-05-19 17:40
2009.07.12
Передача пакетов