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

Тут можно читать онлайн Владимир Волков - Программирование для карманных компьютеров - бесплатно ознакомительный отрывок. Жанр: comp-programming. Здесь Вы можете читать ознакомительный отрывок из книги онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Программирование для карманных компьютеров
  • Автор:
  • Жанр:
  • Издательство:
    неизвестно
  • Год:
    неизвестен
  • ISBN:
    нет данных
  • Рейтинг:
    4.11/5. Голосов: 91
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 80
    • 1
    • 2
    • 3
    • 4
    • 5

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

Программирование для карманных компьютеров - описание и краткое содержание, автор Владимир Волков, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

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

Книга предназначена для начинающих программистов.

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

Программирование для карманных компьютеров - читать книгу онлайн бесплатно (ознакомительный отрывок), автор Владимир Волков
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

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

enum times{SAVE=10,SLEEP=20,STOP=30};

Если инициализируется только часть элементов перечисления, то те элементы перечисления, которые указаны после инициализированных, будут получать возрастающие значения, отсчитываемые от того значения, которое они получили при инициализации. В следующем фрагменте элемент STOP будет инициализирован значением 21.

enum times{SAVE=10,SLEEP=20,STOP};

Области видимости и имена

Объявление вводит имя в область видимости. Это значит, что имя может использоваться только в определенной части текста программы, и, где именно будет использоваться объявленное имя, зависит от того, в каком месте программы оно было объявлено.

Для имени, объявленного в теле функции ( локальное имя), область видимости начинается с места объявления и заканчивается там, где заканчивается блок, внутри которого было объявлено имя. Блоком считается фрагмент кода, заключенный в фигурные скобки.

Имя называется глобальным, если оно объявлено вне любой функции или класса. Область видимости глобального имени простирается от места объявления до конца файла, содержащего объявление. Внешнее по отношению к текущему блоку имя, как глобальное, так и локальное, может быть перекрыто (то есть подменено) объявлением этого же имени внутри текущего блока. В этом случае в памяти образуется два или более разных объектов с одним и тем же именем. То есть имя внутри блока может быть замещено и будет ссылаться на другую область памяти. При выходе из блока имя восстанавливает свое значение. К замещенному глобальному имени можно обратиться при помощи оператора::. К скрытому локальному имени обратиться невозможно. Этот механизм иллюстрируется в упражнении.

Упражнение 4.1 (продолжение)

19. Добавить в программу код, приведенный в листинге 4.9. Нужно при этом объявить соответствующую функцию и добавить еще одну ветвь case.

Листинг 4.9

// Блок 16

void f4(){

//В начале файла объявлена глобальная переменная mm, указывающая на массив

//типа char, то есть на массив символов, то есть на строку. Устанавливая

//первым элементом массива 0, мы показываем, что это строка пустая. Затем,

//при помощи функции strcat, мы добавляем к этой строке строку Hello, Global

//Word! с символом переноса на другую строку \n.

mm[0] = \0;

strcat(mm, «Hello, Global Word! \n»);

//Снова объявляем переменную mm, чем скрываем имя глобальной переменной mm.

//Теперь обращаясь к mm, мы обращаемся к локальному имени, указывающему на

//другую область памяти. В эту другую область мы записываем строку Hello,

//Local Word!

char mm[256];

mm[0] = \0;

strcat(mm, «Hello, Local Word! \n»);

//К строке из локальной переменной mm, мы дописываем строку из глобальной

//переменной mm, обращаясь к глобальной переменной при помощи оператора

//разрешения области видимости::

strcat(mm,mm);

mbstowcs(mstr, mm, 256);

szStr = mstr;

}

Комментарии в тексте поясняют действие кода. После запуска программы нужно нажать клавишу 4. На экран будет выведено следующее сообщение:

Hello, Local Word! Hello, Global Word!

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

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

? Имена из локальной области видимости хорошо делать однобуквенными.

? Чем чаще используется имя, тем короче его надо делать.

? Имя должно отображать смысл использования объекта, а не детали его представления.

? Нужно записывать имена макросов заглавными буквами.

? Следует отделять слова внутри имени символом подчеркивания.

Объекты и lvalue (левые значения)

Когда для хранения тех или иных данных выделяется некоторая непрерывная область памяти, эта операция создает объект. В С++ разработчик может создавать области памяти и хранить там данные, не присваивая этим объектам имен. Но если вы такому объекту все же присваивается имя, то этим создается так называемое lvalue , то есть нечто, что может быть использовано в левой части оператора присваивания. Когда вы создаете переменную, вы создаете модифицируемое lvalue . При создании константы возникает константное lvalue .

Объект, объявленный в функции, создается в момент его определения и живет до выхода из функции. Такого рода объекты называются автоматическими или локальными . Глобальные объекты, а также статические объекты, объявленные в функциях и классах, живут до тех пор, пока не закончится программа.

Объекты, созданные явно при помощи оператора new, уничтожаются оператором delete, и программист непосредственно управляет временем их жизни. Такие объекты называются динамическими .

typedef

Объявление, начинающееся с ключевого слова typedef, вводит новое имя для типа.

typedef char* Pchar;

Эта конструкция создает новое имя для уже имеющегося типа «указатель на символ». Таким образом, ключевое слово typedef позволяет создавать синонимы уже имеющимся типам.

Выражения

Выражения – это операторы, операнды и разделители, определяющие некоторое вычисление и возвращающие значение. В следующем разделе будут рассматриваться основные операторы языка С++, а в этом разделе нужно коснуться приоритета выполнения операторов в выражениях. Правильное понимание того, в каком порядке будут выполняться операторы, поможет избежать многих досадных ошибок, которые не в состоянии обнаружить компилятор. В справочной системе, в разделе, посвященном языку C/C++, есть страница Operator Precedence and Associativity, посвященная этому вопросу. На этой странице указаны практически все операторы языка C++.

Операторы

Операторы – это лексемы, которые производят некоторые вычисления, если их применить к переменным или другим объектам внутри выражения.

Арифметические операторы

Арифметические операторы используются для математических вычислений. Они приведены в табл. 4.1.

Инкремент и декремент могут быть как постфиксными, так и префиксными.

Это демонстрирует следующий фрагмент кода:

int x=1, y=0;

y = x++; //Сначала y получит значение x (1), затем x будет увеличен на 1

y = ++x; //Сначала x будет увеличен на 1, затем полученное значение будет

//увеличено на единицу

Будет иметь смысл и выражение ++x = 5. А вот выражение x++ = 5 не имеет смысла, поскольку мы пытаемся присвоить значение 5 операции инкремента. Таблица 4.1. Арифметические операторы

Битовые операторы

Битовые операторы приведены в следующем списке.

? & – побитовое И. Если оба бита равны 1, то результат тоже будет равен 1, иначе результат будет равен 0.

? | – побитовое ИЛИ. Оператор сравнивает два бита и возвращает 1, если хотя бы один из битов равен 1, иначе результат будет равен 0.

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

Интервал:

Закладка:

Сделать


Владимир Волков читать все книги автора по порядку

Владимир Волков - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




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


Отзывы читателей о книге Программирование для карманных компьютеров, автор: Владимир Волков. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x