Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.17;
Скачать: CL | DM;

Вниз

LongInt   Найти похожие ветки 

 
Comp ©   (2004-10-02 14:36) [0]

Здравствуйте, уважаемые мастера. Объясните новичку пожалуйста, что означает запись
LongInt(@MyVariable) ?
LongInt(PChar("МойТехт")) ???
Это так надо писать, когда посылаешь некоторые сообщения в параметре WParam (или LParam, не помню).
Пожалуйста.


 
Ihor Osov'yak ©   (2004-10-02 14:59) [1]

дело в том, что WParam, LParam - 32 битные целочисельные.
а довольно часто нужно передавать указатель на некие структуры. Приведенные Вами записи - приведение совместимых типов (указателя к 32 битному целочисельному, указателть в win32 - 32 битный также).

Итак.
MyVariable - некая переменная.
@MyVariable - адресс этой переменной, по существу - указатель
LongInt(@MyVariable) - приведение типа. Паскаль, он очень строг с типами, здесь мы говорим компилятору о том, что мы берем на себя ответсвенность за такое, не совсем безопасное в общем случае (а в частном - вполне допустимое) приведение. Фактически, здесь мы подстраиваемся под стиль сишников.

 LongInt(PChar("МойТехт")) ???
Здесь немного сложнее.
"МойТехт" - строка,
PChar - компилемагик, возвращает адресс начала тела той строки. Далее анологично первому случаю.



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

Текущий архив: 2004.10.17;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.038 c
14-1096310610
lipskiy
2004-09-27 22:43
2004.10.17
Ё-маё! да что ж за фигня такая! ну подскажите же что неверно?


1-1096825695
RedDragon
2004-10-03 21:48
2004.10.17
Как мне присвоить текст сделанной строки...


1-1096867349
_Дельфин_
2004-10-04 09:22
2004.10.17
Электронные учебники по Дельфи


1-1096458548
Gemini
2004-09-29 15:49
2004.10.17
Узнать размеры окна


1-1096366408
JamesBond
2004-09-28 14:13
2004.10.17
Проблема с MDI в DLL