Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Перечислимый тип




ДАННЫЕ. ДОПОЛНЕНИЕ

Вопросы для самопроверки

Вопросы для самопроверки и контроля

1. Как разумно размещать инструкции текста программы?

2. Какую роль играют отступы при размещении вложенных инструкций?

3. В чем суть "венгерской" нотации имен?

4. На что, вероятно, указывает предупреждение при трансляции?

5. В чем различие в применении операторов "И" и "ИЛИ" в языках C и Basic?

6. Чем отличается действие оператора деления / в языках C и Basic?

Контрольные вопросы

1. В каких местах нужно осуществлять перенос инструкции, если она не входит в строку?

2. Перечислите типы комментариев к программе.

3. Почему нежелательно использовать в программе схожие имена?

4. Зачем нужно явно объявлять все объекты программы?

5. Почему следует избегать инструкций перехода?

6. В чем преимущество работы с массивами в языке Basic?

Материал данного раздела содержит информацию о типах и совокупностях данных, специфических для конкретного языка программирования, поэтому ниже рядом с названием раздела в скобках будет указываться принадлежность описываемой конструкции к языку: C (C++) и BBasic.

10.1.1. Тип enum (C)

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

enum <имя_типа>{<имя_элемента>[=<значение>],

[<имя_элемента> [=<значение>]]...};

Пример.

enum spectr{RED, ORANGE, YELLOW, GREEN, BLUE, VIOLET};

 

Затем можно определять переменные этого типа:

[ enum ] spectr color1, color2;

В языке C++ указание ключевого слова enum при объявлении переменных перечислимого типа не является обязательным, если инструкция объявления этого типа записана в программе раньше. Ключевое слово enum является сокращением от enumeration – перечисление.

Запись из примера эквивалентна введению символических констант вида:

# define RED 0

# define ORANGE 1

# define YELLOW 2

# define GREEN 3

# define BLUE 4

# define VIOLET 5

Переменные типа spectr могут принимать только указанные значения. При попытке присваивания им другого значения транслятор выдает ошибку.

Пример.

color1=GREEN; // Допустимо

color2=WHITE; // Ошибка!

Если при объявлении типа символическим константам из списка не задается значений, то первая из них по умолчанию получает значение 0, последующие на 1 больше. Если какой-либо из констант задается значение, а последующим нет, то они получают следующее по порядку целое значение.

Пример.

enum RussianCop{one=1, five=5, ten=10, fifty=50};

enum RussianRoub{One=1, Two, Five=5, Ten=10, Fifty=50, Hundred=100, FiveHundred=500, Thousand=1000};

enum mark{BAD=2, MIDDLE, GOOD, FINE};

Как известно, в языке C не определен логический тип данных, однако он легко вводится с помощью объявления вида: enumbool { false, true };

Фактически разумными при работе с данными перечислимых типов являются только следующие операторы: присваиваниеà color1=VIOLET; и сравнениеà color1==color2.

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

10.1.2. Тип enum (B)

Практически аналогичен такому же типу языка C.

Формат объявления типа:

enum <имя_типа>

<имя_элемента>[=<значение>]

[<имя_элемента>[=<значение>] ]

.......................................................




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


Дата добавления: 2014-12-27; Просмотров: 340; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.165 сек.