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

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

Войти
Регистрация
Восстановить пароль
 
J_I
0 / 0 / 0
Регистрация: 21.02.2013
Сообщений: 9
#1

Написать программу хранения целочисленного, либо вещественного типа данных в переменной - C++

08.05.2013, 18:38. Просмотров 463. Ответов 3
Метки нет (Все метки)

Написать программу хранения
целочисленного, либо вещественного типа данных в переменной.
Выдаёт ошибку 'struct tag_var' has no member named 'value'. Что исправить?

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
#include <iostream.h>
#include <stdio.h>
struct tag_var{
       union tag_value;
       short type_var;
       };
   union tag_value
   { int var_i;
     float var_f;
     };
 int main()
 { struct tag_var var[2];
  var[0].type_var=0;
  var[0].value.var_i=10;
  var[1].type_var=1;
  var[1].value.var_f=4,6;
  for (int i; i<2; i++)
     { switch (var[i].type_var)
     { case 0: printf("var=%d\n", var[i].value.var_i); break;
       case 1: printf("var=%f\n", var[i].value.var_f); break;
       default: printf("Значение переменной не определено \n");
       }
       }
       return 0;
       }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.05.2013, 18:38     Написать программу хранения целочисленного, либо вещественного типа данных в переменной
Посмотрите здесь:

Написать программу, в которой объединение используется для хранения информации об одной из геометрических фигур C++
C++ Битовые операции. Написать программу для хранения в битовом поле информации о конфигурации компьютера.
Написать функцию вещественного типа, находящую максимальное из трех вещественных чисел C++
C++ Написать программу для последовательного хранения трех стеков в массиве из N элементов
C++ Хранение типа данных в переменной
C++ Программа с объединением, место целочисленного или вещественного числа,выдает постоянно одну и ту же цифру
Структуры данных. Написать программу, позволяющую определить, есть ли в школе в каких-либо классах однофамильцы C++
Напишите программу, которая определяет, сколько единиц содержится в двоичном представлении переменной типа char C++
Написать программу, которая по заданным трем числам определяет, является ли сумма каких-либо двух из них положительной C++
Написать программу, которая включает после каждого отрицательного элемента целочисленного массива его модуль C++
Написать функцию, меняющую в переменной типа char местами биты с номерами n и n+1 C++
Из переменной типа std::string записать в файл большое количество данных (2 Mb) C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
lemegeton
2917 / 1346 / 133
Регистрация: 29.11.2010
Сообщений: 2,720
08.05.2013, 18:42     Написать программу хранения целочисленного, либо вещественного типа данных в переменной #2
Цитата Сообщение от J_I Посмотреть сообщение
Что исправить?
Программу.

У вас нет объявления идентификатора с именем value.
Что вы имеете в виду, обращаясь к нему?
J_I
0 / 0 / 0
Регистрация: 21.02.2013
Сообщений: 9
08.05.2013, 18:49  [ТС]     Написать программу хранения целочисленного, либо вещественного типа данных в переменной #3
я немного не понимаю эту часть. Её я переписывала из методички. Сама хочу разобраться. Куда будет правильно впихнуть её объявление? И зачем она тут вообще нужна
lemegeton
2917 / 1346 / 133
Регистрация: 29.11.2010
Сообщений: 2,720
08.05.2013, 20:06     Написать программу хранения целочисленного, либо вещественного типа данных в переменной #4
Цитата Сообщение от J_I Посмотреть сообщение
Куда будет правильно впихнуть её объявление? И зачем она тут вообще нужна
Я вообще без понятия. Код -- слабо вменяемый бред. Нет, конечно, заставить компилироваться можно, но надо бы знать, что должно получиться-то в итоге?!

Цитата Сообщение от J_I Посмотреть сообщение
Написать программу хранения
целочисленного, либо вещественного типа данных в переменной.
Задание странное. Нужен тип данных, способный хранить либо одно либо другое на основе union?

Добавлено через 10 минут
Видимо, вам как-то так надо.
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
#include <iostream>
 
enum DataType {
  DATA_TYPE_DOUBLE,
  DATA_TYPE_INTEGER
};
 
union DoubleOrInteger {
  double doubleValue;
  int integerValue;
};
 
struct DoubleOrIntegerVariable {
  union DoubleOrInteger value;
  DataType valueType;
};
 
int main(int argc, char *argv[]) {
  DoubleOrIntegerVariable v;
  
  // или вот так для интеджера
  v.valueType = DATA_TYPE_INTEGER;
  v.value.integerValue = 3;
 
  // вот так для дабла
  v.valueType = DATA_TYPE_DOUBLE;
  v.value.doubleValue = 1.25;
  
  // использовать как-то так, с проверкой
  switch (v.valueType) {
    case DATA_TYPE_DOUBLE:
      std::cout << "Double: " << v.value.doubleValue << std::endl;
      break;
    case DATA_TYPE_INTEGER:
      std::cout << "Integer: " << v.value.integerValue << std::endl;
      break;
    default:
      std::cout << "Unknown data type." << std::endl;
      break;
  };
}
Yandex
Объявления
08.05.2013, 20:06     Написать программу хранения целочисленного, либо вещественного типа данных в переменной
Ответ Создать тему
Опции темы

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