Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Метода по ОАиП.doc
Скачиваний:
13
Добавлен:
11.05.2015
Размер:
3.21 Mб
Скачать

Идентификаторы и типы данных

При программировании в среде Windowsиспользуют соглашения по именованию переменных – идентификатор переменной составляется из букв или частей слов, отражающих смысл этой переменной.

Префиксы некоторых переменных, использующихся в дальнейшем: c –символ; by BYTE (беззнаковый символ); n короткое целое; i целое; cx, cy –целое (длиныxиy;созначает счет –count);b или f BOOL(булево целое,fфлаг –flag);w WORD(беззнаковое короткое целое);l LONG(длинное целое); dw DWORD (беззнаковое длинное целое); fn – функция; s – строка;sz строка, завершаемая нулем (string terminated by zero);h описатель (handle);p – указатель (pointer).

Идентификаторы, написанные прописными буквами, задаются в заголовочных файлах Windows. Двух- или трехбуквенный префикс, за которым следует символ подчеркивания, показывает основную категорию ее принадлежности, например:CS– опция стиля класса (Class Style);IDI– идентификационный номер иконки (ID Icon);IDC– идентификационный номер курсора;WS– стиль окна (windows style);WM– cообщение окна.

Аналогичен смысл новых типов данных, например, тип UINT – 32-разрядноебеззнаковое целое (unsigned int),PSTR– указатель на строку символов (pointer string), т.е.char*;LONG– длинное целое.

WndProcвозвращает значение типаLRESULTLongRESULT. ФункцияWinMainполучает типWINAPI(как и любая другая функцияWindows), а функцияWndProcполучает типCALLBACK– эти идентификаторы являются ссылкой на особую последовательность вызовов функций, которая имеет место между ОСWindowsи ее приложением.

В программе использованы структуры данных: MSG – структура сообщения (message);WNDCLASSEX – структура класса окна;PAINTSTRUCT – структура рисования;RECT – структура прямоугольника.

При обозначении переменных структуры пользуются именем самой структуры и строчными буквами, например, переменная msg– структура типаMSG;wndclass– структура типаWNDCLASSEX.

В программе используются идентификаторы, предназначенные для разных типов описателей (handles):HINSTANCE – описатель экземпляра (instance) самой программы;HWND – описатель окна (handle to a window);HDC – описатель контекста устройства.

Основная программа

Для работы программы подключен файл windows.h, содержащий заголовочные файлы с объявлениями функций, структур и числовых констант. Далее следует декларация прототипа функцииWndProc– «оконная процедура» для окна программыHello.

Основной функцией (точкой входа программы), аналогом стандартной функции mainязыка Си дляWindowsявляется функцияWinMain:

int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,

PSTRszCmdLine,intiCmdShow);

использующая последовательность вызовов WINAPIи возвращающая ОСWindowsцелое значение. В ней используются четыре параметра:

hInstance– описатель экземпляра – уникальное число, идентифицирующее программу;

hPrevInstance– предыдущий (previous) экземпляр; если в данный момент не было загружено копий программы, тоhPrevInstance= 0 илиNULL;

szCmdLine– указатель на строку, в которой содержатся любые параметры, переданные в программу из командной строки;

iCmdShow – число, показывающее, каким должно быть выведено на экран окно в начальный момент; обычно: SW_SHOWNORMAL (1) – вывод окна нормального размера, SW_SHOWMINNOACTIVE (7) – окно должно быть изначально свернутым; префикс SW означает «показать окно» (show window).