Владимир Волков - Программирование для карманных компьютеров

Здесь есть возможность читать онлайн «Владимир Волков - Программирование для карманных компьютеров» — ознакомительный отрывок электронной книги совершенно бесплатно, а после прочтения отрывка купить полную версию. В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Программирование для карманных компьютеров: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Программирование для карманных компьютеров»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Эта книга предназначена для того, чтобы читатель смог быстро научиться создавать мощные и эффективные приложения для наладонных компьютеров Pocket PC. Рынок программ для карманных компьютеров сейчас бурно развивается, и именно в этой отрасли программист-одиночка может успешно соперничать с большими корпорациями, которые создают программное обеспечение. Прочитав эту книгу, читатель сможет уверенно и быстро разрабатывать достаточно сложные приложения для Pocket PC. Огромное количество разнообразных примеров позволит быстро совершенствоваться и развиваться, обогащая свой опыт работы.
Книга предназначена для начинающих программистов.

Программирование для карманных компьютеров — читать онлайн ознакомительный отрывок

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Программирование для карманных компьютеров», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Данное объявление говорит о том, что препроцессор, встретив вызов макрофункции CEM_UPCASEALLWORDS, вместо имени подставит выражение (WM_USER + 1). Макрофункция, как и любая другая функция, может принимать параметры. К примеру, объявление #define MF(a, b, c) (a*b*c/(a+b+c)) далее в тексте может быть использовано как MF(x, y, z). Вместо имени фунции с заданными аргументами препроцессор вставит тело функции, то есть (x*y*z/(x+y+z)). Файл newres.h начинается со строк:

#ifndef __NEWRES_H__ #define __NEWRES_H__

а завершается строкой:

#endif //__NEWRES_H__

Эти строки показывают еще одно применение директивы #define. Выражение #define __NEWRES_H__ при обработке препроцессором приведет к замене имени __NEWRES_H__ простым пробелом. На самом деле это выражение служит маркером для выполнения условной компиляции или условного включения. Таким образом, директива #define позволяет определить имя, которое нигде не появится в конечном тексте программы ни в виде символа, ни в виде значения, но будет служить условием выбора для самого препроцессора.

Эти строки дают возможность перейти к директивам условной компиляции (условного расширения). К этим директивам относятся #if, #ifdef, #ifndef, #endif, #else и #elif.

Директива условной компиляции #if позволяет управлять процессом компиляции проекта. Если выражение const_exp, стоящее после директивы #if в конструкции #if const_exp, имеет ненулевое значение, то текст, следующий за директивой #if до соответстующей ей директивы #endif, будет включен в текст, подаваемый на вход компилятора (а значит, и скомпилирован). В противном случае этот текст не попадет на вход компилятора и не войдет в программу.

Если имя ident, стоящее после директивы #ifdef в конструкции #if ident, определено в тексте программы, то текст, следующий за директивой #ifdef до соответстующей ей директивы #endif, будет включен в текст, подаваемый на вход компилятора.

Если имя ident, стоящее после директивы #ifndef в конструкции #ifndef ident, не определено в тексте программы, то текст, следующий за директивой #ifndef до соответствующей ей директивы #endif, будет включен в текст, подаваемый на вход компилятора.

В целом конструкция условной компиляции может выглядеть так, как показано в листинге 4.30.

Листинг 4.30

#if cnst_ex1//Если выражение const_exp1 имеет значение true,

[text1]//тогда расширяется text1

[#elif cnst_ex2//иначе если cnst_ex2 имеет значение true,

text2]//тогда расширяется text2

[#elif cnst_ex3//иначе если cnst_ex3 имеет значение true,

text3]//тогда расширяется text3 … и так далее.

[#elif cnst_exN//если не был расширен ни один из предыдущих блоков,

textN]//расширяем текст textN

#endif//и завершаем блок условной компиляции

Теперь нужно проанализировать реальный код, который приведен в листинге 4.31. Листинг 4.31

/* Если имя __NEWRES_H__ не определено, */

#ifndef __NEWRES_H__

/* Определяем это имя и расширяем текст модуля */

#define __NEWRES_H__

[текст модуля]

#endif //__NEWRES_H__

Если имя __NEWRES_H__ уже было определено в какой-то части программы, то повторной вставки модуля в текст не последует. Такой прием используется для предотвращения многократного расширения в тексте программы одного и того же модуля, на который оказалось несколько ссылок директивы #include. Также этот механизм предотвращает ситуацию, когда два модуля оказались взаимно включены друг в друга. Это вполне возможно в сложных программах, где включаемые модули в свою очередь тоже содержат директивы #include.

Директива #undef удаляет объявление имени, сделанное при помощи директивы #define.

Редко используемая директива #line позволяет изменить нумерацию строк и имя файлов, выводимых макросами____ LINE__ и___ FILE__.

Директива #import предназначена для вставки в текущий файл импортированной из соответствующей библиотеки типов информации. Например, директива

#import..\office\office.olb

вставит описание интерфейсов из файла office.olb в текущий файл.

Директива #pragma позволяет вставлять в текст модулей директивы, свойственные только данной платформе или операционной системе. У каждого компилятора для каждой операционной системы свой набор директив #pragma.

Функции

Функции main() и WinMain()

Функции в C++ являются краеугольным камнем всей концепции программирования. Собственно говоря, функции как раз и выполняют всю работу, которую запланировал для своего приложения разработчик. Само выполнение программы, написанной на С++, начинается с вызова специальной функции. Для консольных приложений это будет функция main О, для приложений Windwos – WinMainO. Модуль, в котором определена эта функция, и является основным модулем программы.

У консольного приложения со стандартным ходом выполнения программы все остальные функции вызываются из функции mainO, и когда все определенные в mainO функции вызваны, завершается выполнение основной функции, а вместе с ней завершается и выполнение программы.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Программирование для карманных компьютеров»

Представляем Вашему вниманию похожие книги на «Программирование для карманных компьютеров» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


libcat.ru: книга без обложки
Владимир Волков
Владимир Волков - Русь Святая
Владимир Волков
Владимир Волков - Время пришло… Пауза
Владимир Волков
Отзывы о книге «Программирование для карманных компьютеров»

Обсуждение, отзывы о книге «Программирование для карманных компьютеров» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x