Вниз
Скачать: CL | DM;

Объясните как это работает   Найти похожие ветки 

 
ssv   (2002-08-22 14:12) [0]

Есть код на Си:

BYTE sbuf[] = {..... };
..............
... (const char *)sbuf.......

Помогите разобраться что это такое и как это реализуется на Делфи


 
NeyroSpace   (2002-08-22 14:23) [1]

Это приведение типов, аналог делфи
s:string;
...
PChar(s)//это пример
а на Си написано привести sbuf к типу УКАЗАТЕЛЬ НА CHAr
Если это Борланд, то можно приводить как и на делфи, путем заключения в скобки:
НужныйТип(ИскомыйТип)


 
ssv   (2002-08-22 15:26) [2]

Да это в принципе понятно, но есть массив типа byte
а потом в одной функции встречается такая закорючка
...(const char *)sbuf.........
так вот как это реализуется на Делфи, т.е. что надо вместо этого написать на делфи


 
Игорь Шевченко ©   (2002-08-22 15:31) [3]

var
a : array[0..255] of Byte;
b : PChar;
......
b := PChar(@a);


 
NeyroSpace   (2002-08-22 15:31) [4]

Ну можно привести указатель к типу PByte, т.е. указатель на байт а его (значение указателя) уже привести к символу. Хотя можно и через указатель типа PChar. Все зависит от того что нужно.


 
kull ©   (2002-08-22 16:15) [5]

(const char *)sbuf - Это указатель на константные данные.

На Delphi это не реализуется. :)


 
Игорь Шевченко ©   (2002-08-22 16:16) [6]

kull © (22.08.02 16:15)

Я полагаю, что автору все-таки не шашечки нужны, а ехать :-)


 
ssv   (2002-08-27 13:35) [7]


> kull © (22.08.02 16:15)


И всеже на Delphi это реализуется Pchar(@sbuf[1])^


 
Игорь Шевченко ©   (2002-08-27 13:56) [8]

ssv (27.08.02 13:35)

Это неверная реализация.
см. kull © (22.08.02 16:15)



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

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



Память: 0.46 MB
Время: 0.009 c
4-27277
Andrey Fomin
2002-07-18 10:44
2002.09.09
Определение правильного Charset


1-26945
Геральт
2002-08-28 22:04
2002.09.09
MainForm


14-27196
Sten
2002-08-12 00:28
2002.09.09
Подскажите компАнет....плииииз


3-26892
Sergey L.
2002-08-20 09:48
2002.09.09
Помогите в создании отчета


1-27008
xyz
2002-08-22 02:10
2002.09.09
Integer прописью




   Наверх