Операционная система Microsoft Windows 3.1 для программиста -том 1

Купить сухпай ссылка. |

Программа "Hello, world!" для Windows


Давайте попробуем создать для Windows вариант известной всем программы, приведенной в книге Кернигана и Риччи, посвященной программированию на языке C:

main() { printf("Hello, world!"); }

Задачей этой программы, как следует из исходного текста, является вывод на экран строки "Hello, world!".

Как мы уже говорили, вместо функции main приложение Windows использует функцию WinMain, причем необходимо указать все четыре параметра этой функции.

К сожалению, вы не сможете воспользоваться функцией printf, так как ни эта, ни другие аналогичные функции консольного ввода/вывода в обычных приложениях Windows использовать нельзя. Для вывода текстовой строки "Hello, world!" мы воспользуемся функцией из программного интерфейса Windows с именем MessageBox.

Создайте на диске каталог с именем hello и скопируйте в него файлы hello.cpp и hello.prj из одноименного каталога, расположенного на дискете, которую вы купили вместе с книгой. Если вы приобрели книгу без дискеты, воспользуйтесь исходным текстом программы, приведенным в листинге 1.1.

Листинг 1.1. Файл hello\hello.cpp

// ---------------------------------------- // Простейшее приложение Windows // "Hello, world!" // ---------------------------------------- #define STRICT #include <windows.h> #pragma argsused int PASCAL WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdLine, int nCmdShow) { MessageBox(NULL, "Hello, world!", "Main Window", MB_OK); return 0; }

Первой строкой в программе является определение символа STRICT:

#define STRICT

Это определение влияет на обработку файла windows.h, обеспечивая более строгую проверку типов данных. Такая проверка облегчит вам в дальнейшем преобразование исходных текстов программ для 32-разрядных приложений Win32s или Windows NT. И хотя в нашем простом примере проверять почти нечего, мы включили определение STRICT для сохранения единого стиля во всех примерах программ.

Следующая строка сообщает компилятору, что не нужно выводить предупреждающее сообщение о том, что расположенная следом функция не пользуется своими параметрами:




Начало  Назад  Вперед



Книжный магазин