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

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

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

проблева ввода строки - C++

08.05.2012, 21:16. Просмотров 256. Ответов 4
Метки нет (Все метки)

Пропускает ввод строки. Какого черта?)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include<iostream>
using namespace std;
void main()
{
    int a;
    char str[44];
    cout<<"vvedite chislo\n";
    cin>>a;
    cout<<"vvedite stroku\n";
    cin.getline(str,44);
    cout<<str;
    cout<<endl;
    system("pause");
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.05.2012, 21:16     проблева ввода строки
Посмотрите здесь:

C++ Проверка правильности ввода строки
C++ Программа для ввода строки от блондинки
C++ Выход в случае ввода пустой строки
C++ Написать программу ввода и вывода строки на C++
Длина строки до ввода ? C++
C++ Время ввода строки
Цикл и строки, очистка потока ввода C++
Контроль длины ввода строки C++
C++ Ожидание ввода строки в консоле Linux
Пропуск ввода строки C++
Не дожидается ввода строки C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Infinity3000
1058 / 577 / 24
Регистрация: 03.12.2009
Сообщений: 1,255
08.05.2012, 21:23     проблева ввода строки #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
 
using namespace std;
int main()
{
     int a;
    char str[44];
    cout<<"vvedite chislo\n";
    cin>>a;
    cout<<"vvedite stroku\n";
    cin.get();
    cin.getline(str,44);
    cout<<str;
    cout<<endl;
    system("pause");
 
    return 0;
}
Drygba
504 / 446 / 34
Регистрация: 17.02.2012
Сообщений: 1,032
Записей в блоге: 1
08.05.2012, 21:23     проблева ввода строки #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
       #include<iostream>
using namespace std;
void main()
{
    int a;
    char str[44];
    cout<<"vvedite chislo\n";
    cin>>a;
    cin.get();
    cout<<"vvedite stroku\n";
    cin.getline(str,44);
    cout<<str;
    cout<<endl;
    system("pause");
}

Не по теме:

Infinity3000,

Gepar
1175 / 531 / 20
Регистрация: 01.07.2009
Сообщений: 3,517
08.05.2012, 21:25     проблева ввода строки #4
AfoTax, попробую на пальцах:
C++
1
2
3
    cin>>a; //вводим число и энтер (по привычке)
    cout<<"vvedite stroku\n";//в буфере для чтения всё ещё находится энтер
    cin.getline(str,44);//получаем энетр из буфера и думаем что ввод закончен
Варианты как это исправить:
1) Вводить в самом начале число пробел строка, например 2 string.
2)Убирать перевод строки с помощью cin.ignore().
AfoTax
0 / 0 / 0
Регистрация: 05.12.2011
Сообщений: 37
09.05.2012, 00:34  [ТС]     проблева ввода строки #5
Всем спасибо.
Yandex
Объявления
09.05.2012, 00:34     проблева ввода строки
Ответ Создать тему
Опции темы

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