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

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

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

Ввод символьной строки. Подскажите что делаю не так? - C++

31.03.2016, 07:42. Просмотров 163. Ответов 5
Метки нет (Все метки)

Подскажите что делаю не так?

char model[15];
хочу что бы модель можно было ввести спробелами.
меняем на string mondel;
значит нужно поменять способ ввода cin >> x[i].model; на getline(cin, x[i].model), ну или оставить char model[15], а поменять способ ввода, скажеи так cin.getline(model, 15);

В любом случаи получаю ошибку: индекатор getline не определен ну или просто подчеркнуто красным.

В чем дело подскажите. Убил кучу время, а результата нуль
Большое спасибо.



Кликните здесь для просмотра всего текста
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
#include <iostream>
 
using namespace std;
 
struct Cars 
{                   
    char model[15];
    int price;  
};
 
 
void inputCars(Cars *x, int n)
{
    for (int i = 0; i < n; i++)
    {
        cout << "Input car #" << i+1 << " model: "; cin >> x[i].model;
        cout << "Input car #" << i+1 << " price: "; cin >> x[i].price;
    }
}
 
 
void OUTPUT_cars(Cars *x, int n)
{   
    cout << endl << "Model" << "   " << "Price" <<  endl;
 
    for (int i = 0; i < n; i++)
    {
        cout << x[i].model << "    " << x[i].price << endl;
    }
}
 
int main()
{       
    int n; 
    cout << "Input n: "; 
    cin >> n;
    
    Cars *Massive = new Cars[n];
    
    inputCars(Massive, n);
    OUTPUT_cars(Massive, n);
 
    delete [] Massive; 
    
    system("pause");
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.03.2016, 07:42     Ввод символьной строки. Подскажите что делаю не так?
Посмотрите здесь:

C++ подскажите что не так делаю?
C++ Работа с указателями: подскажите что я не так делаю
C++ что не так делаю?!
C++ Подскажите что я делаю не так?
C++ Подскажите что не так я делаю (решить систему на встроенном ассемблере)
C++ Подскажите, что я делаю не так
C++ Подскажите что я не так делаю
Что я делаю не так? C++
Что я делаю не так? C++
C++ Что я делаю не так?
C++ Подскажите, что делаю не так
Что-то не то с Майкрсофт визуал студио 2010 или я что-то не так делаю C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MansMI
1119 / 916 / 232
Регистрация: 08.01.2012
Сообщений: 3,298
31.03.2016, 08:07     Ввод символьной строки. Подскажите что делаю не так? #2
C++
1
cin.getline([x].model, 15);
TheCalligrapher
С чаем беда...
Эксперт CЭксперт С++
 Аватар для TheCalligrapher
3365 / 1687 / 448
Регистрация: 18.10.2014
Сообщений: 3,095
31.03.2016, 08:16     Ввод символьной строки. Подскажите что делаю не так? #3
Цитата Сообщение от SerJer Посмотреть сообщение
В любом случаи получаю ошибку: индекатор getline не определен ну или просто подчеркнуто красным.
Вы что-то выдумываете. Только что сделал в вашем коде

C++
1
cin.getline(x[i].model, 15);
и все прекрасно скомпилировалось.
zss
Модератор
Эксперт С++
 Аватар для zss
6125 / 5728 / 1852
Регистрация: 18.12.2011
Сообщений: 14,638
Завершенные тесты: 1
31.03.2016, 10:56     Ввод символьной строки. Подскажите что делаю не так? #4
C++
1
2
3
#include <iostream>
char x[15];
std::cin.getline(model, 15);
C++
1
2
3
4
#include <iostream>
#include <string>
std::string model;
std::getline(std::cin,model);
SerJer
0 / 0 / 0
Регистрация: 18.10.2015
Сообщений: 28
31.03.2016, 22:11  [ТС]     Ввод символьной строки. Подскажите что делаю не так? #5
Завтро попробую еще раз.
zss
Модератор
Эксперт С++
 Аватар для zss
6125 / 5728 / 1852
Регистрация: 18.12.2011
Сообщений: 14,638
Завершенные тесты: 1
01.04.2016, 07:02     Ввод символьной строки. Подскажите что делаю не так? #6
SerJer, Кстати
C++
1
2
3
4
5
6
7
8
9
10
void inputCars(Cars *x, int n)
{
    for (int i = 0; i < n; i++)
    {
        cout << "Input car #" << i+1 << " model: ";
        cin.getline(model, 15);
        cout << "Input car #" << i+1 << " price: "; 
        (cin >> x[i].price).get(); // get нужно для пропуска символа конца строки
    }
}
Yandex
Объявления
01.04.2016, 07:02     Ввод символьной строки. Подскажите что делаю не так?
Ответ Создать тему
Опции темы

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