Вниз
Скачать: 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
2-1242877845
NaRuTo
2009-05-21 07:50
2009.07.12
Как узнать продолжительность звукового файла?


15-1241426831
Student
2009-05-04 12:47
2009.07.12
Контроль версий


4-1212241407
hub00
2008-05-31 17:43
2009.07.12
Cобытия курсора мышки.


2-1243095504
{RASkov}
2009-05-23 20:18
2009.07.12
Построение дерева


15-1241819732
Johnnnn
2009-05-09 01:55
2009.07.12
Windows XP Taskbar?




   Наверх