Форум программистов, компьютерный форум CyberForum.ru

Дирректива процессора - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Заменить одну последовательность другой последовательностью http://www.cyberforum.ru/cpp-beginners/thread87139.html
Выполнить следующие модификации строки букв. Напечатать начальную строку. Напечатать букву, которая должна быть удалена из строки (она находится в ) и новую строку. Заменить одну последовательность y++ другой последовательностью y+=1 Разбить получившийся рядок на несколько с помощью ; вОТ Сама строка!!! gotoxy(52 , y);y++;printf(“%1.1f”,s); Спасибо огромное!!!
C++ Структура Дан массив из 6 элементов типа структура, содержащих координаты центра окружности и радиус(x,y,r)Надо определить и вывести на печать координаты центра той окружности, которая пересекает максимальное количество заданных окружностей. Использовать функции. Язык Си(не С++)....помогите, пожалуйста... http://www.cyberforum.ru/cpp-beginners/thread87113.html
C++ программа на с
Народ как сделать такую прогу Ввести с клавиатуры текст определить и выбрать самое длинное слово подсчитать кол-во букв, и вывести на экран
программа часы-будильник C++
никак не могу разобратся,подскажите пожалуйста как сделать чтобы пользователь мог сам вводить время?и как это сделать через класс? #include <process.h> #include <windows.h> #include <stdio.h> #include <conio.h> #define MINUTE(23) #define HOUR (17) #define RINGS (10) HANDLE hTerminateEvent ; VOID CALLBACK TimerAPCProc(LPVOID, DWORD, DWORD)
C++ Динамическое програмирование http://www.cyberforum.ru/cpp-beginners/thread87071.html
Очень нужна помощь в решении задач на С++ или С++ Builder Помогите кто сможет,последняя надежда на вас Очень буду рада! Большое спасибо заранее!!!!!! Задача 1. Из диапазона найти числа, имеющие K делителей Например К=3 Диапозон 12345 подходит число 4 т.к. у него 3 делителя это 1,2,4 Задача 2. Две команды проводят серию игр до 6 побед одной из команд. Первая команда побеждает вторую с...
C++ Посоветуйте литературу по объектам и классам Посоветуйте литературу по объектам и классам... подробнее

Показать сообщение отдельно
Genius Ignat
1233 / 771 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
18.01.2010, 22:02     Дирректива процессора
Вот тебе объединения: книга "Керниган. Ричи . Язык C"
Только шрифт пример устаревшего стиля, издание наверное раннее.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
6.8. Объединения
Oбъединения - это переменная, которая в различные момен-
ты времени может содержать объекты разных типов и размеров,
причем компилятор берет на себя отслеживание размера и тре-
бований выравнивания. Объединения представляют возможность
работать с различными видами данных в одной области памяти,
не вводя в программу никакой машинно-зависимой информации.
    В качестве примера, снова из символьной таблицы компиля-
тора, предположим, что константы могут быть типа INT , FLOAT
или быть указателями на символы. значение каждой конкретной
константы должно храниться в переменной соотвествующего ти-
па, но все же для управления таблицей самым удобным было бы,
если это значение занимало бы один и тот же объем памяти и
хранилось в том же самом месте независимо от его типа. это и
является назначением объединения - выделить отдельную пере-
менную, в которой можно законно хранить любую одну из пере-
менных нескольких типов. Как и в случае полей, синтаксис ос-
новывается на структурах.
 
  UNION U_TAG \(
  INT IVAL;
  FLOAT FVAL;
  CHAR *PVAL;
  \) UVAL;
 
Переменная UVAL будет иметь достаточно большой размер,чтобы
хранить наибольший из трех типов, независимо от машины, на
которой осуществляется компиляция, - программа не будет за-
висить от характеристик аппаратных средств. Любой из этих
трех типов может быть присвоен UVAR и затем использован в
выражениях, пока такое использование совместимо: извлекаемый
тип должен совпадать с последним помещенным типом. Дело
программиста - следить за тем, какой тип хранится в объеди-
нении в данный момент; если что-либо хранится как один тип,
а извлекается как другой, то результаты будут зависеть от
используемой машины.
 
 
 
    Синтаксически доступ к членам объединения осуществляется
следующим образом:
 
  имя объединения.член
  --------------------
или
  указатель объединения ->член
  ----------------------------
 
то есть точно так же, как и в случае структур. если для отс-
леживания типа, хранимого в данный момент в UVAL, использу-
ется переменная UTYPE, то можно встретить такой участок
программы:
 
  IF (UTYPE == INT)
  PRINTF("%D\N", UVAL.IVAL);
  ELSE IF (UTYPE == FLOAT)
  PRINTF("%F\N", UVAL.FVAL);
  ELSE IF (UTYPE == STRING)
  PRINTF("%S\N", UVAL.PVAL);
  ELSE
  PRINTF("BAD TYPE %D IN UTYPE\N", UTYPE);
 
    Объединения могут появляться внутри структур и массивов
и наоборот. Запись для обращения к члену объединения в
структуре (или наоборот) совершенно идентична той, которая
используется во вложенных структурах. например, в массиве
структур, определенным следующим образом
 
 STRUCT \(
 CHAR *NAME;
 INT FLAGS;
 INT UTYPE;
 UNION \(
 INT IVAL;
 FLOAT FVAL;
 CHAR *PVAL;
 \) UVAL;
  \) SYMTAB[NSYM];
 
на переменную IVAL можно сослаться как
 
  SYMTAB[I].UVAL.IVAL
 
а на первый символ строки PVAL как
 
  *SYMTAB[I].UVAL.PVAL
 
   В сущности объединение является структурой, в которой все
члены имеют нулевое смещение. Сама структура достаточно ве-
лика, чтобы хранить "самый широкий" член, и выравнивание
пригодно для всех типов, входящих в объединение. Как и в
случае структур, единственными операциями, которые в настоя-
щее время можно проводить с объединениями, являются доступ к
 
 
 
члену и извлечение адреса; объединения не могут быть присво-
ены, переданы функциям или возвращены ими. указатели объеди-
нений можно использовать в точно такой же манере, как и ука-
затели структур.
   Программа распределения памяти, приводимая в главе 8 ,
показывает, как можно использовать объединение, чтобы сде-
лать некоторую переменную выровненной по определенному виду
границы памяти.
Добавлено через 1 минуту
Надеюсь шрифт тебя не пугает.

Добавлено через 5 минут
Совет раз тебя интересует C:
Качай книгу отцов основателей языка:
"Керниган. Ричи . Язык C".

Добавлено через 53 секунды
Только с годом издания поновей.
 
Текущее время: 14:25. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru