Главная страница
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.01 c
2-1242990507
Андрей (начинающий)
2009-05-22 15:08
2009.07.12
TWebBrowser и контекстное меню


15-1241883974
@!!ex
2009-05-09 19:46
2009.07.12
Как отследить изменение памяти?


15-1241852208
Riply
2009-05-09 10:56
2009.07.12
С праздником !


15-1242063452
ford
2009-05-11 21:37
2009.07.12
утечка памяти Getmem+FreeMem


2-1242619357
MonoLife
2009-05-18 08:02
2009.07.12
Ошибка запроса к dbf.