Студопедия — ТЕОРЕТИЧЕСКАЯ ЧАСТЬ. Объединение (union) – это тип, который позволяет хранить различные типы данных в одном пространстве памяти (но не одновременно) [1].
Студопедия Главная Случайная страница Обратная связь

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

ТЕОРЕТИЧЕСКАЯ ЧАСТЬ. Объединение (union) – это тип, который позволяет хранить различные типы данных в одном пространстве памяти (но не одновременно) [1].






 

1.1. Объединения

Объединение (union) – это тип, который позволяет хранить различные типы данных в одном пространстве памяти (но не одновременно) [1].

Объединения образуются во многом подобно структурам. Существуют шаблоны объединений и переменные типа объединения. Они могут быть определены с помощью одного или двух действий, причем в последнем случае используется дескриптор объединения [1].

Пример шаблона объединения с дескриптором hold:

union hold {

int digit;

double bigf;

char letter;

};

Объединение может хранить значение тип int, double, char. Структура с такими же полями способна хранить все типы одновременно.

Пример определения трех переменных объединения:

Union hold fit; // переменная объединения типа hold

Union hold save[10]; // массив из 10 переменных объединения

Union hold *ptr; // указатель на переменную типа hold

Первое объявление определяет единственную переменную fit. Компилятор выделяет пространство памяти, достаточное для того, чтобы хранить наибольший из описанных вариантов, а именно тип double, который требует обычно 8 байт. Второе объявление save[10] создает массив с 10 элементами, каждый из которых имеет размер в 8 байт. В третьем объявлени указатель может содержать адрес объединения hold.

Рассмотрим варианты инициализации объединения [1]:







Дата добавления: 2015-09-06; просмотров: 380. Нарушение авторских прав; Мы поможем в написании вашей работы!



Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...

Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

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

Конституционно-правовые нормы, их особенности и виды Характеристика отрасли права немыслима без уяснения особенностей составляющих ее норм...

Толкование Конституции Российской Федерации: виды, способы, юридическое значение Толкование права – это специальный вид юридической деятельности по раскрытию смыслового содержания правовых норм, необходимый в процессе как законотворчества, так и реализации права...

ТЕОРИЯ ЗАЩИТНЫХ МЕХАНИЗМОВ ЛИЧНОСТИ В современной психологической литературе встречаются различные термины, касающиеся феноменов защиты...

Этические проблемы проведения экспериментов на человеке и животных В настоящее время четко определены новые подходы и требования к биомедицинским исследованиям...

Классификация потерь населения в очагах поражения в военное время Ядерное, химическое и бактериологическое (биологическое) оружие является оружием массового поражения...

Studopedia.info - Студопедия - 2014-2024 год . (0.008 сек.) русская версия | украинская версия