Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.10.2012, 19:16   #1
Leshii
Форумчанин
 
Регистрация: 26.07.2011
Сообщений: 376
По умолчанию Вместо значения Char принимается значение int.

Возможно в шапке даже немного не правильно указал суть проблемы,но соль вот в чём, в месте где выделено красным вместо значения char почему то принимает значение int, то есть если ввожу строку, оно мне сразу выбрасывает ошибку.

Пробовал дебагером пройтись но у меня лагать начинает ... ( на нетбуке в основном делаю )

Код:
#include "stdafx.h"
#include  <conio.h>
#include  <iostream>

using namespace std;

union Sklad
{
	char nazvanie;
};
struct whats
{
	char marka[20];
	int god, cena;
	Sklad Inf;
};

void main()
{
	whats Car[3];
	
	for (int i = 0 ; i < 3 ; i++)
	{
		cout<<"Enter Nazvanie, marka, year, cena:\n";
		cin>>Car[i].Inf.nazvanie;
		cin>>Car[i].marka;
		cin>>Car[i].god;
		cin>>Car[i].cena;
	}
	for ( int i = 0 ; i < 3 ; i++)
	{
		cout<<Car[i].Inf.nazvanie<<Car[i].marka<<Car[i].god<<Car[i].cena<<"\n";
	}
	for ( int i = 0 ; i < 3 ; i++)
	{ 
		if  (Car[i].cena < 3000)
		{
			cout<<Car[i].Inf.nazvanie<<Car[i].marka<<Car[i].god<<Car[i].cena<<"\n";
		}

	}
	_getch();
}
Люблю на ты.Я человек простой

Последний раз редактировалось Leshii; 05.10.2012 в 19:44.
Leshii вне форума Ответить с цитированием
Старый 05.10.2012, 19:45   #2
_-Re@l-_
C++, Java
Старожил
 
Аватар для _-Re@l-_
 
Регистрация: 10.04.2010
Сообщений: 2,665
По умолчанию

Цитата:
в месте где выделено красным вместо значения char почему то принимает значение int, то есть если ввожу строку, оно мне сразу выбрасывает ошибку.
Я полагаю, что ошибка не в выделенной строке, а в предыдущей. Sklad объявлен так :
Код:
union Sklad
{
	char nazvanie;
};

// и юзается так

cin>>Car[i].Inf.nazvanie;
Так что, в общем-то, в качестве названия вы используете один символ. В случае же, когда вы введете один символ и нажмете ентер, введенный символ сохранится в название, а символ перевода строки, в общем-то, сохранится в марку. Ну а дальше, в качестве цены загоняется вторая введенная вами строка, которую вы хотели пихнуть в марку. Понятно?
_-Re@l-_ вне форума Ответить с цитированием
Старый 05.10.2012, 19:48   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
		cin>>Car[i].Inf.nazvanie; cin.clear();
		cin>>Car[i].marka;cin.clear();
		cin>>Car[i].god;cin.clear();
		cin>>Car[i].cena;cin.clear();
не?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 05.10.2012, 19:52   #4
_-Re@l-_
C++, Java
Старожил
 
Аватар для _-Re@l-_
 
Регистрация: 10.04.2010
Сообщений: 2,665
По умолчанию

Stilet, да зачем?) getline() для строк, а getchar() для символов никто не отменял.

Последний раз редактировалось _-Re@l-_; 05.10.2012 в 19:55.
_-Re@l-_ вне форума Ответить с цитированием
Старый 05.10.2012, 20:04   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Я просто предложил )
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 05.10.2012, 20:23   #6
Leshii
Форумчанин
 
Регистрация: 26.07.2011
Сообщений: 376
По умолчанию

Цитата:
Понятно?
Очень даже Благодарю.
Люблю на ты.Я человек простой
Leshii вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
char[]>int Styks Общие вопросы C/C++ 1 22.03.2012 17:18
из char в int pufystyj Общие вопросы C/C++ 8 04.04.2011 14:49
Как перевести значение ячейки массива char в int в Си SASS Общие вопросы C/C++ 1 10.12.2009 14:44
из char в int?? Mika Общие вопросы C/C++ 4 20.06.2008 15:18
Есть таблица - В ней три поля int, char, char нужно чтобы данные заносились в таблицу Mysql Muahahaha PHP 8 27.03.2008 11:17