русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Синтаксис и правила


Дата добавления: 2013-12-23; просмотров: 745; Нарушение авторских прав


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

Синтаксис:

union поле тега {

тип поле1;

тип поле2;

тип поле3;

.

.

.

тип полеN;

};

Обратите внимание на сходство синтаксисов объявлений структур и объединений в следующем примере:

union unmany_types {

char с;

int ivalue;

float fvalue;

double dvalue;

} unmy_union;

Объединение описывается при помощи ключевого слова union, за которым следует необязательное поле тега unmany_types. Поле тега объединения используется так же, как поле тега crpyicrypbi. Данное объединение содержит несколько элементов: символ, целое число, число с плавающей точкой и число двойной точности. В отдельный момент времени это объединение позволяет хранить в unmany_types информацию только об одном типе данных.

С объединением связана переменная unmy_union. Если этот оператор расположен в функции, то область действия данного объединения является локальной для функции. Если оператор расположен за пределами всех функций, то область действия объединения — глобальная.

С одним объединением можно связать несколько переменных; можно также обращаться к членам объединения при помощи операции "точка" (.).

Синтаксис:

unname.mname

В этой записи unname является переменной, связанной с типом объединения, а mname — имя любого элемента объединения.

Создание простого объединения

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

#include <iostream.h>

union unmany_types

{

char c;

int ivalue;

float fvalue;

double dvalue;

} unmy_un ion;

int main (void)

{

// valid I/O

unmy_un ion. c= * b ' ;

cout << unmy_union.c << "\n";

unmy_union. ivalue=1990;

cout << unmy_union.ivalue << "\n";



unmy_union. fvalue=19.90;

cout << unmy_union.fvalue << "\n";

unmy_union.dvalue=987654.32E+13;

cout << unmy_union.dvalue << "\n";

// неправильный ввод/вывод

cout << unmy_union.c << "\n";

cout << unmy_union.ivalue << "\n";



cout << unmy_union.fvalue << " \n";

cout << unmy_union.dvalue << "\n";

// размер объединения

cout << "The size of this union is: "

<< sizeof(unmany_types) <<[{|"|}]bytes." << "\n";

return (0);

}

Сначала программа просто вводит и распечатывает информацию из объединения. Эта часть работает, поскольку вызываемое объединение хранит в каждый момент времени только один тип данных. Во второй части программы делается попытка вывести каждый тип, существующий в объединении. Единственным верным значением будет число двойной точности, поскольку оно было последним значением, записанным в предыдущей части программы.

b

19.9

9.876543е+18

_

-26216

-2.054608e+33

9.876543e+18

The size of this union is: 8 bytes.

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



<== предыдущая лекция | следующая лекция ==>
Объединения | Вспомогательные средства


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

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