Вниз
Скачать: 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 вся ветка

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



Память: 0.46 MB
Время: 0.006 c
15-1241819732
Johnnnn
2009-05-09 01:55
2009.07.12
Windows XP Taskbar?


2-1243107805
Dot
2009-05-23 23:43
2009.07.12
запись значения из таблицы в переменную


15-1241762640
мс_анатолий
2009-05-08 10:04
2009.07.12
случайный ряд


15-1241607255
serg_new_
2009-05-06 14:54
2009.07.12
GSM modem


4-1212488971
KygECHuK
2008-06-03 14:29
2009.07.12
Hmodule по HWND




   Наверх