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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 5.00
Adler
78 / 78 / 3
Регистрация: 07.05.2009
Сообщений: 316
#1

case struct - C++

13.09.2009, 11:04. Просмотров 1324. Ответов 5
Метки нет (Все метки)

Здравствуйте!

Подскажите как аналогичную структуру сделать в С++?
Delphi
1
2
3
4
5
6
7
type
 MainTyp=record
  case integer of
   1:(I:integer);
   2:(w1,w2:word);
   3:(b1,b2,b3,b4:byte);
 end;
это не предлагать, ибо не правильно.
C++
1
2
3
4
5
6
7
8
9
10
11
typedef unsigned short WORD;
typedef unsigned int DWORD;
typedef unsigned char byte;
typedef struct{
  union
  {
    int i;
    WORD w1,w2;
    byte b1,b2,b3,b4;
  };
}MainTyp;
Добавлено через 24 минуты
ещё вопрос вдогонку.
C++
1
2
3
vector<int> v;
/* ... */
for(int j=0;j<v.size());j++){/* something */}
как быть с варнингом?
warning C4018: '<' : signed/unsigned mismatch
отрубить его или плодить код вида
C++
1
for(int j=0;j<(int)v.size());j++)
или даже
C++
1
int c=(int)v.size(); for(int j=0;j<c);j++)
?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.09.2009, 11:04     case struct
Посмотрите здесь:

Struct{...} - C++
Задача № 1 (динамические структуры) Написать программу создания динамической структуры, заданной рисунком, с вводом элементов с...

struct - C++
Привествую ) Такой вопрос назрел ) Хочу создать переменную типа структуры: Всегда создавал так: my_struct var;

struct (с++) - C++
Кто может написать полный синтаксис структуры. Чем отличается структура от класса ? Всем ответившим высказываю свою благодарность.

Struct{...} - C++
Драсьте мне нужна помощь. Написать программу ввода и вывода студентов группы и каждый из них характеризуется фамилией и номером...

Struct в CreateThread - C++
Здравствуйте. Имеется класс game: class game { private: ball *Ball; //Объект класса ball platform *Platform; //Объект...

Работа со struct - C++
Помогите пожалуйста советом, что лучше нужно изменить в коде, чтобы приложение не зависало. Зависание сразу же после первого ввода....

Struct vedomost - C++
Проверьте, пожалуста, на правильную конфигурацию код. В сведения хранится информация по задолженностям студентов: ФИО., Группа, курс,...

Struct и библиотека - C++
Здравствуйте! Есть два файла: cpp и заголофочный файл .h Подскажите пожалуйста как передать массив из структур в эту библиотеку? ...

Struct VS Class - C++
Здравствуйте. Я прочел интересную статью http://www.rsdn.ru/article/cpp/ObjectsAndPointers.xml#EVPAC по использованию памяти для...

typedef struct - C++
а зачем вы используете конструкцию typedef struct name{...} ? и какие она дает преимущества в отличии от struct name{...}

Class vs Struct - C++
класс или структура что создаётся быстрее? перегружаются ли конструкторы структуры? если существуют (не уверен) сколько занимают в...

Использование Struct - C++
Условие: Создать массив структур, используя данные из задания. Создать программное приложение, которое включает его обработку с...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
mustardandrew
Человек
96 / 80 / 3
Регистрация: 16.06.2009
Сообщений: 229
13.09.2009, 11:15     case struct #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
using namespace std;
 
int main(){
    struct b4{ unsigned char b1,b2,b3,b4; };
    struct w2{ unsigned short w1,w2; };
    
    union UnionMy{
      unsigned int i;
      w2 w;
      b4 b;       
    };
    
    
    cin.get();
    return 0;   
}
Вот примерно так.

Добавлено через 1 минуту
Цитата Сообщение от Adler Посмотреть сообщение
ещё вопрос вдогонку.
Код C++1
2
3 vector<int> v;
/* ... */
for(int j=0;j<v.size());j++){/* something */}
как быть с варнингом?
вот так правильно
C++
1
for(int j=0;j<v.size();j++){/* something */}
Adler
78 / 78 / 3
Регистрация: 07.05.2009
Сообщений: 316
13.09.2009, 11:35  [ТС]     case struct #3
DreamWolf
Спасибо! Хорошая идея. Сделал так.
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
// CaseRecord.cpp : Defines the entry point for the console application.
//
 
#include "stdafx.h"
#include <iostream>
///*
 
typedef unsigned short WORD;
typedef unsigned int DWORD;
typedef unsigned char byte;
 
typedef struct{
  union
  {
    int i;
    struct {WORD w1,w2;};
    struct {byte b1,b2,b3,b4;};
  };
}MainTyp;
//*/
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
  MainTyp V;
  V.i=0;
  V.w1=255;
  V.w2=1;
  cout<<V.i<<endl;
  cin.get();
    return 0;
}
Добавлено через 13 минут
DreamWolf,
вот так правильно
ну правильно так правильно, значит
C++
1
#pragma warrning(diable: 4018)
mustardandrew
Человек
96 / 80 / 3
Регистрация: 16.06.2009
Сообщений: 229
13.09.2009, 11:44     case struct #4
а что ещо ворнинг вискакивает.
Там у тебя била лишняя скоба.
Rififi
2359 / 1054 / 44
Регистрация: 03.05.2009
Сообщений: 2,656
13.09.2009, 12:25     case struct #5
Adler,

как быть с варнингом?
warning C4018: '<' : signed/unsigned mismatch
отрубить его или плодить код вида


надо просто использовать соответствующий тип

typedef std::vector<int> V;
V v;

for (V::size_type i=0 ...

а ещё лучше делать тоже самое через итераторы.
Adler
78 / 78 / 3
Регистрация: 07.05.2009
Сообщений: 316
13.09.2009, 15:28  [ТС]     case struct #6
Цитата Сообщение от DreamWolf Посмотреть сообщение
Там у тебя била лишняя скоба.
o_O это я тут о печатался три раза, на самом деле её там нету ни раза.

Цитата Сообщение от Rififi Посмотреть сообщение
а ещё лучше делать тоже самое через итераторы.
ясно.
Yandex
Объявления
13.09.2009, 15:28     case struct
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru