Форум: "Основная";
Текущий архив: 2004.05.23;
Скачать: [xml.tar.bz2];
ВнизСоответствие описания в C и Delphi Найти похожие ветки
← →
AndrewVolkov (2004-05-08 21:30) [0]Добрый вечер.
Подскажите пожалуйста
в С хххх.н
выглядит след. образом#define STATUS_C "C"
и все это DWord;
я пишу в Delphi в юните так,STATUS_C = ORD("C");
{$EXTERNALSYM STATUS_C}
правильно ли это?
← →
AndrewVolkov (2004-05-08 22:03) [1]Сишники есть?
← →
Romkin © (2004-05-08 22:11) [2]STATUS_C: DWORD = ORD("C");
Как минимум...
← →
AndrewVolkov (2004-05-08 22:15) [3]>>Romkin
а то что у меня, разве не подойдет?
← →
Gero © (2004-05-08 22:26) [4]
> а то что у меня, разве не подойдет?
А иначе 1 байт будет.
Это никак не DWORD.
← →
AndrewVolkov (2004-05-08 22:30) [5]а так тоже он как 1 байт поймет?
STATUS_C = $43;
← →
AndrewVolkov (2004-05-08 22:33) [6]Я пораскинул мозгами и не понял, почему один байт будет. Разве он оставшиеся нулями не добьет до 4 байтов?
В С же тоже только#define STATUS_C "C"
← →
AndrewVolkov (2004-05-08 23:20) [7]Знатоки Си???
← →
Gero © (2004-05-08 23:24) [8]
> Знатоки Си???
Вы ошиблись.
Здесь обитают преимущественно знатоки Delphi.
← →
AndrewVolkov (2004-05-08 23:41) [9]Обычно знают. ;-)
← →
Игорь Шевченко © (2004-05-08 23:59) [10]Да зачем так орать-то?
#define STATUS_C "C"
Это не DWORD и не байт, это вообще нисколько.
Читай [2]
← →
AndrewVolkov (2004-05-09 00:03) [11]Извините, не понял - что читать???
И в смысле - нисколько?
← →
Alex Konshin © (2004-05-09 00:26) [12]А с чего ты решил, что в C кто-то "добьет" до 4 байт? У тебя же просто макрос, даже не константа. В Delphi макросов нет, можешь определить константу, как тебе говорят.
← →
AndrewVolkov (2004-05-09 00:31) [13]Сорри не дописал, что я его и определяю как константу.
Просто я не пойму
unit OplUnit;
interface
uses
Windows;
type
...
...
const
STATUS_C: DWORD = ORD("C");
или
STATUS_C = ORD("C");
есть разница или нету. Если да, то в чем?
← →
Игорь Шевченко © (2004-05-09 00:58) [14]
> const
>
> STATUS_C: DWORD = ORD("C");
>
> или
>
> STATUS_C = ORD("C");
>
> есть разница или нету. Если да, то в чем?
Открываем F1 на топиках True Constants и Typed Constants и внимательно читаем.
Кстати, приведи пример использования этой константы, вполне вероятно, что никакой разницы нету.
← →
AndrewVolkov (2004-05-09 01:05) [15]есть функция. Входной параметр - указатель на структуру.
Структура (Запись )имеет вид
Struct=record
Handle:THandle;
Specifications:DWORD;
вот эти спецификайшенсы описаны в подключаемом модуле как const
в Си это выглядит как
#define STATUS_C "C"
а я хочу уточнить, как это будет правильно в Delphi
← →
Игорь Шевченко © (2004-05-09 01:20) [16]
> а я хочу уточнить, как это будет правильно в Delphi
Может быть, так:type
Struct = record
Handle: THandle;
Specifications: DWORD;
end;
const
Status_C = Ord("C");
Struct1: Struct = (Handle: 0; Specifications: Status_C);
← →
TUser © (2004-05-09 05:48) [17]
> Status_C = Ord("C");
Тогда это byte. Надо указать тип.
← →
AndrewVolkov (2004-05-09 13:29) [18]Но если я dword:=byte он же будет работать.
Почему тогда в Си не определяют его Dword, а просто пишут
#define STATUS_C "C"
то что он потом будет вх.данным в запись
type
Struct = record
Handle: THandle;
Specifications: DWORD;
end;
где его кинут в DWORD он же не знает.
Значит реально его можно описывать как Byte?
← →
Игорь Шевченко © (2004-05-09 14:15) [19][18] AndrewVolkov (09.05.04 13:29)
Все-таки Help иногда надо читать...
← →
AndrewVolkov (2004-05-09 15:14) [20]to Игорь Шевченко
Да почитал я. То - насколько моего англ. хватило я и переспрашиваю в пред. топике.
Толи я вообще понял?
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.05.23;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.04 c