Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Объединения union






Объединения соответствуют типам вариантных записей языка Delphi и объявляются подобно структурам. Активным может быть только одно поле. Все поля перекрывают друг друга в памяти.

Размер объеди­нения равен размеру наибольшего поля.

Пример:

union un {int i; float f; char c; } a, b; // объявление объединения

a.i=1; Label1-> Caption=a.i; // использование поля i

a.f=12.34; Label2-> Caption=a.f; // использование поля f

a.c='w'; Label3-> Caption=a.c; // использование поля c

Перечисления enum

Перечисления служат для присвоения имен набору целых чисел (int), что повышает наглядность и надежность задания правильных значений переменной. Объявление имеет вид:

enum [< имя перечисляемого типа для объявления переменных> ]

{ < имя 1> [=< значение 1> ],..., < имя N> [=< значение N> ] }

[< список имен перечисляемых переменных> ];

По умолчанию значение первого элемента равно нулю, а значение сле­дую­щего элемента списка на единицу больше.

Пример задания имен дням недели, начиная с понедельника:

int main(int argc, char **argv) // основная процедура

{ enum dninedeli {poned=1, vtor, sreda, hetv, pjtn, subb, vosk} den; // дни недели

den=vosk; // задание значения перечисляемой переменной den

if (den==vosk) printf(«Воскресенье %d день недели», den); getch(); // вывод

}

Основные возможности

Предпроцессор

В задачи предпроцессора входят: подключение (при необходимости) к данной программе внешних файлов, указываемых директивой #include, и выполнение его директив.

6.2.2. Директива #Include

Во многие программы подставляются один или несколько файлов, часто в самое начало кода главной программы main. Появление директив:

#include < файл_1>

...

#include «файл_n»

приводит к тому, что препроцессор подставляет на место этих директив тексты файлов: файл_1 файл_2 файл_n соответственно. Если имя файла заключено в кавычки, то вклю­чает­ся файл пользователя. Если имя файла заключено в угловые скобки, то файл входит во внеш­ние биб­лиоте­ки C++. Приведем список основных библиотек: stdlib.h (стандартная), math.h, math.hpp (математика), SysUtils.hpp (утилиты), time.h (время), ctype.h (обработка символов), string.h (строки), stdio.h, conio.h (ввод‑ вы­вод).

6.2.3. Директива #define

С помощью директивы #define, вслед за которой пишутся имя и значение макрооператора, оказывается возможным указать пред­процес­со­ру, чтобы он при любом появлении в исходном файле данного имени заменял это имя на соответствующее значение макро­оператора (име­но­ван­ные константы (п. 1.1.1)).

Пример: #define square (х) ((х)*(х)); /* задает замену символа square (аргумент) на значение (аргумент) * (аргумент) */

Пример: #define рi 3.1415926; /* связывает идентификатор pi со значением 3.1415962 */


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.007 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал