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

Ввод данных различных типов. - C++

Восстановить пароль Регистрация
 
radx
2 / 2 / 0
Регистрация: 31.01.2009
Сообщений: 12
02.05.2009, 03:14     Ввод данных различных типов. #1
Ввод данных. Читаю книжку по плюсам. Застопорился на моменте с вводом данных, когда строки, числа и сомволы чередуются.

Допустим такой пример.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
main(){
    char str1[20];
    char str2[20];
    char ch[1];
    short num;
 
    cout << "String 1" << endl;
    cin.getline(str1,19);
 
    cout << "Num" << endl;
    cin >> num;
 
    cout << "String 2" << endl;
    cin >> str1;
 
    cout << "One char" << endl;
    cin >> ch;
 
    cout << num << " " << str1 << " "<< str2 << " "<< ch << endl;
 
  return 0;
}
Первая вводима строка может состоять из нескольких слов.

В итоге получается
Код
String 1
qwe ewq
Num
13
String 2
ddd
One char
w

13 ddd  w
Как правильно тут считать данные?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.05.2009, 03:14     Ввод данных различных типов.
Посмотрите здесь:

C++ шаблон для различных типов одномерных массивов
Класс динамического массива для различных типов C++
Ввод значений переменных различных типов C++
Объявление переменных различных типов C++
Инстанцирование шаблона для различных типов C++
C++ Ввод и вывод типов переменных
Как правильно заменить ввод данных простой на ввод с клавиатуры? C++
C++ Хранение и вызов различных типов функций в одной переменной
Массив из массивов различных типов (malloc) C++
Возвращение различных типов данных C++
C++ Контейнеры, способные хранить данные произвольных (различных) типов
C++ Как stl контейнеры работают с объектами различных типов данных?

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Vourhey
Почетный модератор
6470 / 2245 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
02.05.2009, 03:51     Ввод данных различных типов. #2
Не понял. Ты же уже считал данные.
radx
2 / 2 / 0
Регистрация: 31.01.2009
Сообщений: 12
02.05.2009, 05:31  [ТС]     Ввод данных различных типов. #3
А то, что неправильно считалось. К примеру str1 при выводе оказалась пустой.

У Прата что писалась, что при считываение \n( или \0 ?) учитывается по разному.
И какие-то примеры с cin.get(), cit.clear() привел, но что-то не осилил их(примеры).
accept
4838 / 3237 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
02.05.2009, 08:02     Ввод данных различных типов. #4
C++
1
2
    cout << "String 2" << endl;
    cin >> str1;
C++
1
    char ch[1];
нужно заменить на

C++
1
    char ch;
или

C++
1
    int ch;
так как всё равно оно будет к нему приводиться во всех операциях, а int может различать ещё и EOF и 'я' (в отличие от char)
radx
2 / 2 / 0
Регистрация: 31.01.2009
Сообщений: 12
02.05.2009, 08:13  [ТС]     Ввод данных различных типов. #5
accept, точняк. что-то я напутал в

cout << "String 2" << endl;
cin >> str1;

спс
Yandex
Объявления
02.05.2009, 08:13     Ввод данных различных типов.
Ответ Создать тему
Опции темы

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