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

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

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

При выводе данных char исчезает первый элемент - C++

06.08.2014, 16:51. Просмотров 389. Ответов 11
Метки нет (Все метки)

Вот моя программа
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
class Colect
{
public:
    Colect();
    void Input();
    void Output();
private:
    char *name;
    int year;
    int cost;
};
 
Colect::Colect()
{
    name = 0;
    year = cost = 0;
}
 
void Colect::Input()
{
    cout << "Введите название авто: ";
    name = new char[10];
    cin.get();
    cin.getline(name,10);
    cout << "Введите год выпуска авто: ";
    cin >> year;
    cout << "Введите стоимость авто: ";
    cin >> cost;
    cout << endl;
 
}
 
void Colect::Output()
{
    cout << "Марка авто: " << name << endl;
    cout << "Год выпуска: " << year << endl;
    cout << "Стоимость: " << cost << endl;
    
}
int main()
{
    setlocale(LC_ALL, "Russian");
    Colect a[2];
    for (int i(0); i < 2; i++)
    {
        a[i].Input();
        a[i].Output();
        cout<<endl;
    }
Проблема в том, что при выводе данных, исчезает первый елемент, последующий ввод нормальный
0
Миниатюры
При выводе данных char исчезает первый элемент  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.08.2014, 16:51
Здравствуйте! Я подобрал для вас темы с ответами на вопрос При выводе данных char исчезает первый элемент (C++):

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

Считывание из файла в char - при выводе выводится лишнее - C++
Считываю из файла в строку типа char, если у меня в строке меньше 16 символов, то при выводе выводится какой-то мусор, наверное связано с...

Почему при выводе в поток char* выводится весь массив символов? - C++
я немогу вот в чем разобраться есть : int main() { char v = &quot;Fdasda&quot;; char *p=v; cout &lt;&lt; &quot;\np=&quot; &lt;&lt; p; cout &lt;&lt; &quot;\n*p=&quot; &lt;&lt;*p; ...

При выводе char* в конце строки "tr" - C++
struct List { char* inf; List* next; }; void AddToHead(List* &amp;head, char* inf) { List* p = new List; p-&gt;inf = inf; ...

Почему при выводе указателя получаем для char - значение по адресу, а для других типов - адрес - C++
Есть следующий код. Результат работы этой программы представлен на рисунке. Почему при выводе указателя для char возвращается значение, а...

Заменить при выводе массива каждый второй элемент остатком от деления на 10 - C++
Как при выводи массива заменить остатком от деления каждый второй элемент на 10. #include &lt;iostream&gt; #include &lt;iterator&gt; using...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Бендерродригез
Сгибальщик
42 / 42 / 3
Регистрация: 18.05.2013
Сообщений: 220
Завершенные тесты: 1
06.08.2014, 16:55 #2
C++
1
2
3
4
5
6
7
8
9
10
11
void Colect::Input() {
cout << "Введите название авто: ";
name = new char[10];
cin.get();
cin.getline(name,10);
cout << "Введите год выпуска авто: ";
cin >> year;
cout << "Введите стоимость авто: ";
cin >> cost;
cout << endl;
}
Первым cin.get() ты этот символ и удаляешь из потока. Вот только зачем?
0
KvisMensters
0 / 0 / 0
Регистрация: 06.08.2014
Сообщений: 10
06.08.2014, 16:59  [ТС] #3
Что-бы ввод реагировал на ENTER
0
Бендерродригез
Сгибальщик
42 / 42 / 3
Регистрация: 18.05.2013
Сообщений: 220
Завершенные тесты: 1
06.08.2014, 17:01 #4
То есть?
И что же будет, если ты таки уберёшь ненужный в данном случае вызов?
0
KvisMensters
0 / 0 / 0
Регистрация: 06.08.2014
Сообщений: 10
06.08.2014, 17:02  [ТС] #5
Я удалил cin.get()
но ничего не изменилось
0
Бендерродригез
Сгибальщик
42 / 42 / 3
Регистрация: 18.05.2013
Сообщений: 220
Завершенные тесты: 1
06.08.2014, 17:03 #6
Пересобери проект.
0
KvisMensters
0 / 0 / 0
Регистрация: 06.08.2014
Сообщений: 10
06.08.2014, 17:05  [ТС] #7
Перестроил, но ничего не вышло.
0
Бендерродригез
Сгибальщик
42 / 42 / 3
Регистрация: 18.05.2013
Сообщений: 220
Завершенные тесты: 1
06.08.2014, 17:13 #8
У меня всё нормально работает:
В первом случае, конечно.
cin.get() в конце Input() нужно поставить.
0
Миниатюры
При выводе данных char исчезает первый элемент  
Бендерродригез
Сгибальщик
42 / 42 / 3
Регистрация: 18.05.2013
Сообщений: 220
Завершенные тесты: 1
06.08.2014, 17:14 #9
Microsoft Visual C++ 2010: программа делает Debug старой версии кода
Должно помочь.
Если у тебя VS.
0
KvisMensters
0 / 0 / 0
Регистрация: 06.08.2014
Сообщений: 10
06.08.2014, 17:20  [ТС] #10
Извини за вопрос, а как пересобрать проект, не сильно знаюсь с VS
0
Бендерродригез
Сгибальщик
42 / 42 / 3
Регистрация: 18.05.2013
Сообщений: 220
Завершенные тесты: 1
06.08.2014, 17:22 #11
Сборка -> перестроить решение.
0
KvisMensters
0 / 0 / 0
Регистрация: 06.08.2014
Сообщений: 10
07.08.2014, 00:37  [ТС] #12
Бендерродригез, Пожалуйста помоги, у меня VS 2013 и я не могу найти настройки, которые ты посоветовал, гугл не помог

Добавлено через 4 минуты
Бендерродригез, никак не хочет работать,все также не выдает первый имвол
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.08.2014, 00:37
Привет! Вот еще темы с ответами:

почему часть текста исчезает ? переменная char и цикл - C++
вот скрипт , которая пишет текст сверху вниз . но часть текста исчезает . я так понял , переменная может внести в себя весь текст , так как...

Проблемы с кодировкой при выводе данных - C++
Пользуюсь хрюшей и VS 2008 Программа 1 #include &lt;fstream&gt; #include &lt;iostream&gt; #include &lt;string&gt; using namespace std; int main()...

Личные цифры при выводе данных - C++
У меня в этом коде почему то при выводе результата появится личные цифры такие 2009424020 #include &lt;iostream&gt; using namespace std; ...

Добавляются лишние символы при выводе данных в поток - C++
Есть char buff; куда пишутся данные с сети. вывожу на печать: cout &lt;&lt;&quot;IMEI- &quot; &lt;&lt; &quot;--&quot; &lt;&lt; buff&lt;&lt;buff&lt;&lt;buff ...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
07.08.2014, 00:37
Ответ Создать тему
Опции темы

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