Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
9 / 9 / 0
Регистрация: 22.11.2010
Сообщений: 29

Декларация структур

14.12.2010, 22:06. Показов 3284. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
У меня задание - сделать БД чтобы каждое значение весило по 256 байт и сохранялось в файл по опред структуре. Файл вроде уже заисывает, опробовал на простых примерах, но вот универсальную структуру значения не могу прописать(((
Вот такая проблема... читаю по Подбельскому С++(короче он или <del>урод</del> пишет на каком своем C++ или я не понял его) там ничего не описано что надо структуры декларировать а VS6 и VS2008 ругаются... в итоге кое чего нашел в примерах и сделал следующее


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
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
#include <fstream.h>
#include <stdlib.h>
#include <sys/stat.h>
#include <io.h>
#include <process.h>
#include <conio.h>
#include <stdio.h>
#include <windows.h>
 
struct FRAZA
{
unsigned char dlinleks;
unsigned char markleks;
unsigned char teksleks[62];
unsigned char rezerv[130];
union fr192
{ unsigned long iestkluz;
unsigned long kluzntip;
unsigned long parolter;
} bait192;
unsigned long iestatip;
unsigned long bolshvos;
unsigned long bolshnis;
unsigned long menshvos;
unsigned long menshnis;
unsigned long smegnvos;
unsigned long smegnnis;
unsigned long presmvos;
unsigned long presmnis;
union fr232
{struct fr2321
{unsigned long eotvevos:1;
unsigned long pozznbai:20;
unsigned long pozznbit:3;
unsigned long sozdproc:8;
} bait1;
struct fr2322
{unsigned long eotvevos:1;
unsigned long dlinanab:23;
unsigned long dlinfrag:8;
} bait2;
struct fr2323
{unsigned long eotvevos:1;
unsigned long parolkiz:31;
} bait3;
} bait232;
union fr236 
    {struct fr2361//
    {unsigned long eotveNis:1;
    unsigned long dliznbai:20;
    unsigned long dliznbit:3;
    unsigned long vozvproc:8; 
        } bait2361;
    struct fr2362//
    {unsigned long rez2362:1;  
    unsigned long dlinanab:23;
    unsigned long dlinfrag:8;
        } bait2362;
    struct fr2363//
    {unsigned long rez2363:1;  
    unsigned long parolklz:31;
        } bait2363;
}bait236;
unsigned long poslomon;
unsigned long predomon;
unsigned long sledurov;  
unsigned long sledfraz; 
} fraza;
 
void main()
{SetConsoleCP(1251);
 SetConsoleOutputCP(1251);
 
 FRAZA fraza;
             
cout<< "Vvedite nazvanie baz\n";
cin>> fraza.teksleks;
cout<< "Vvedite dliny leksemm\n";
cin>> fraza.dlinleks; 
cout << "Vvedite symbol\n";
cin >> fraza.markleks;
        {switch (fraza.markleks) 
        {
     case 35 : if (fraza.markleks=='35') cout << "KluznTip " << '\n'; break; // #
    case 92:if (fraza.markleks=='92') cout << "ParolTera " << '\n'; break; // "\"
    case 58: if (fraza.markleks=='58') cout << "ParolTerb " << '\n';break; //  :
     case 61: if (fraza.markleks=='61') cout << "IeStKluz " << '\n'; break; // =
        };
        };
        
        cout<< "Vvedite nazvanie baz\n";
  cin>> fraza.teksleks;
  cout<< "Vvedite dliny leksemm\n";
  cin>> fraza.dlinleks; 
  cout << "Vvedite symbol\n"; 
     cin >> fraza.markleks;
  cout << "Vvedite ierarhicheskiy starshiy tip\n";
  cin  >> fraza.iestatip;
  cout << "Vvedite glob adress leksemm-frazy bolshey chem dannaya v voshod. strukture ";
  cin  >> fraza.bolshvos;
        
  cout << "Vvedite glob adress leksemm-frazy bolshey chem dannaya v nishod. strukture ";
  cin  >> fraza.bolshnis;
      
  cout << "Vvedite glob adress leksemm-frazy menshey chem dannaya v voshod. strukture ";
  cin  >> fraza.menshvos;
      
  cout << "Vvedite glob adress leksemm-frazy menshey chem dannaya v nishod. strukture ";
  cin  >> fraza.menshnis;
      
  cout << "Vvedite glob adress leksemm-frazy smegnoy k dannoy v voshod. strukture ";
  cin  >> fraza.smegnvos;
       
  cout << "Vvedite glob adress leksemm-frazy smegnoy k dannoy v nishod. strukture ";
  cin  >> fraza.smegnnis;
      
  cout << "Vvedite glob adress leksemm-frazy predsmegnoy k dannoy v voshod. strukture ";
  cin  >> fraza.presmvos;
       
  cout << "Vvedite glob adress leksemm-frazy predsmegnoy k dannoy v nishod. strukture ";
  cin  >> fraza.presmnis;
      
  cout << "Vvedite znachenie bita, ukaz. chto est otvetvlenie u dannoy leksemm-vetki v voshod. strukture ";
  cin  >> fraza.fr232.bait1.eotvevos;
вот на последней строке ВС мне выдает
C:\Documents and Settings\Admin\Рабочий стол\СОАН\Test\20121214\NEWSTAR.CPP(124) : error C2274: 'function-style cast' : illegal as right side of '.' operator
C:\Documents and Settings\Admin\Рабочий стол\СОАН\Test\20121214\NEWSTAR.CPP(124) : error C2228: left of '.bait1' must have class/struct/union type
C:\Documents and Settings\Admin\Рабочий стол\СОАН\Test\20121214\NEWSTAR.CPP(124) : error C2228: left of '.eotvevos' must have class/struct/union type

Я не знаю что ему ответить...(((
Как вы видите на предыдущие переменные онне ругается, они видятся и с нимим можно работать. Я главную структуру декларировал. А Вложенные не знаю как правильно декларировать.
Подскажите как правильно объявлять объединения и структуры, пожалуйста!!! и как их правильно декларировать и как потом перменные во вложенных структурах применять?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.12.2010, 22:06
Ответы с готовыми решениями:

декларация в классе
я хочу в класс добавить указатель на другой класс и получаю следующую ошибку: product.h:20: error: ISO C++ forbids declaration of...

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

Декларация класса полинома
Как лучше задекларировать класс полинома n-ного порядка от m различных x с мультипликативными членами суммарной степени &lt;=n? Например,...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
14.12.2010, 22:06
Помогаю со студенческими работами здесь

Декларация класса со статическим полем
Не сингелтон, а класс со статическим именно полем, а не экземпляром. Как это пишется, я знаю, если у меня будет реальная задача на такое...

Что такое forward декларация функции?
Вот в этом примере узнал об этом : struct S { static int i; S() { ++i; } S(const S&amp;) { ++i; } }; int...

Структуры.Обработка массивов структур.Создать массив структур из 10-ти элементов
Создать массив структур из 10-ти элементов: &lt;Номер договора&gt;&lt;Фамилия клиента&gt;&lt;стоимость товара&gt;&lt;выплаченная сумма&gt; ...

Блочная сортировка структур (Отсортировать массив структур по фамилии)
Подскажите алгоритм блочной сортировки структур на языке С++. Мне нужно отсортировать массив структур по фамилии.

Можно ли присвоить одному массиву структур значение другого массива структур и записать его в файл
Можно ли присвоить одному массиву структур значение другого массива структур и записать его в файл?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru