Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.09.09;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

Форум: "Основная";
Текущий архив: 2002.09.09;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.006 c
1-26965
snike
2002-08-29 10:12
2002.09.09
SMTP Аутентификация


6-27150
sergrrey
2002-06-28 10:33
2002.09.09
ClientSocket посылает строку только со второго раза!


4-27285
star
2002-07-08 12:46
2002.09.09
Как сделать программно скриншот всего экрана


3-26885
XanderMan
2002-08-18 15:27
2002.09.09
Как заставить работать FoxPro 2.6a под Win2k


14-27182
nikolo
2002-08-13 10:11
2002.09.09
Алгоритмы перевода чисел и дат





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский