русс | укр

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

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

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

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


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

Объединения


Дата добавления: 2015-01-16; просмотров: 693; Нарушение авторских прав


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

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

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

Общая форма объявления объединения

union ИмяОбъединения
{

тип ИмяОбъекта1;

тип ИмяОбъекта2;

. . .

тип ИмяОбъектаn;
};

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

§ для инициализации объекта, если в каждый момент времени только один из многих объектов является активным;

§ для интерпретации представления одного типа данных в виде другого типа.

Пример Поменять местами два младших байта во введенном числе

#include <stdio.h>
#include <stdlib.h>
int main() {

char temp;

system("chcp 1251");

system("cls");

union

{

unsigned char p[2];

unsigned int t;

} type;

printf("Введите число: ");

scanf("%d", &type.t);

printf("%d = %x шестн.\n",type.t, type.t);

// Замена байтов

temp = type.p[0];

type.p[0] = type.p[1];

type.p[1] = temp;

printf("Поменяли местами байты, получили\n");

printf("%d = %x шестн.\n",type.t, type.t);

getchar(); getchar();

return 0;
}

Результат выполнения



<== предыдущая лекция | следующая лекция ==>
Инициализация полей структуры | Тип имя: КоличествоБит


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


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

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

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


 


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

 
 

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

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