![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Объясните как это работает
ssv © (2002-08-22 14:12:00)Есть код на Си:
BYTE sbuf[] = {.....};
..............
...(const char *)sbuf.......
Помогите разобраться что это такое и как это реализуется на Делфи
Игорь Шевченко (2002-08-27 13:56:00) [1]ssv (27.08.02 13:35)
Это неверная реализация.
см. kull © (22.08.02 16:15)
ssv (2002-08-27 13:35:00) [2]
> kull © (22.08.02 16:15)
И всеже на Delphi это реализуется Pchar(@sbuf[1])^
Игорь Шевченко (2002-08-22 16:16:00) [3]kull © (22.08.02 16:15)
Я полагаю, что автору все-таки не шашечки нужны, а ехать :-)
kull (2002-08-22 16:15:00) [4](const char *)sbuf - Это указатель на константные данные.
На Delphi это не реализуется.:)
Игорь Шевченко (2002-08-22 15:31:00) [5]var
a : array[0..255] of Byte;
b : PChar;
......
b := PChar(@a);
NeyroSpace (2002-08-22 15:31:00) [6]Ну можно привести указатель к типу PByte, т.е. указатель на байт а его (значение указателя) уже привести к символу. Хотя можно и через указатель типа PChar. Все зависит от того что нужно.
ssv (2002-08-22 15:26:00) [7]Да это в принципе понятно, но есть массив типа byte
а потом в одной функции встречается такая закорючка
...(const char *)sbuf.........
так вот как это реализуется на Делфи, т.е. что надо вместо этого написать на делфи
NeyroSpace (2002-08-22 14:23:00) [8]Это приведение типов, аналог делфи
s:string;
...
PChar(s)//это пример
а на Си написано привести sbuf к типу УКАЗАТЕЛЬ НА CHAr
Если это Борланд, то можно приводить как и на делфи, путем заключения в скобки:
НужныйТип(ИскомыйТип)