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

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

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

Не могу прочитать данные - C++

24.02.2013, 21:43. Просмотров 277. Ответов 3
Метки нет (Все метки)

Здравствуйте. Не могу прочитать данные после второго ввода (после enter a phrase). Объясните пожалуйста что не так, а то недавно начал изучать язык и сам не могу разобраться. Вот программа.

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
#include <iostream>
 
using namespace std;
void function();
 
int main ()
{
    function();
}
 
void function()
{
    
    cout<<"Hello."<<'\n';
    
    int number;
    cout<<"Enter a number:   ";
    cin>>number;
 
    cout<<"Enter a phrase < 20 simbols:  ";
    char phrase[20]={};
    cin.getline(phrase,20);
    
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.02.2013, 21:43
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не могу прочитать данные (C++):

Не могу прочитать данные ячейки памяти - C++
Подскажите пожалуйста что не так. Адресс ячейки вычислил через артмани. Код процесса выводит верно, а значение памяти нет. Для примера взял...

Прочитать данные из файла - C++
Доброго времени суток! Помогите написать программку для чтения данных из файла, а то никак не получается. Есть файл, в первой строке...

Как правильно прочитать данные? - C++
Как правильно прочитать данные? &quot;ER-200&quot; 06:43 10:40 &quot;Red Arrow&quot; 23:55 07:55 &quot;Express&quot; 23:59 08:00 &quot;Slow Train 1&quot; 10:00 09:59 ...

Прочитать данные структуры из файла - C++
Есть структура struct person { String name; String famil; String otchest; } Как записать в ее поля данные из файла? В...

Как прочитать данные pdf - C++
Как прочитать данные из файла pdf в программу какие есть для этого инструменты С++?? Можете фрагмент кода привести??

Прочитать данные из файла в массив - C++
Здравствуйте, я посоветоваться. Задача моего кода состоит в том, что у меня есть текстовый файл с числами, а в коде есть переменные,...

3
zss
Модератор
Эксперт С++
6401 / 5967 / 1944
Регистрация: 18.12.2011
Сообщений: 15,367
Завершенные тесты: 1
24.02.2013, 21:49 #2
Этот нюанс уже много раз оговаривался.
После считывания чисел в буфере текущим кодом для
ввода остается знак конца строки.
cin.getline(phrase,20);
записывает в phrase как раз этот конец строки.
Простейший способ исправить - повторить ввод:
C++
1
2
3
char phrase[20];
cin.getline(phrase,19);
cin.getline(phrase,19);
0
wikikino
0 / 0 / 0
Регистрация: 09.11.2011
Сообщений: 15
24.02.2013, 21:56  [ТС] #3
Цитата Сообщение от zss Посмотреть сообщение
Этот нюанс уже много раз оговаривался.
После считывания чисел в буфере текущим кодом для
ввода остается знак конца строки.
cin.getline(phrase,20);
записывает в phrase как раз этот конец строки.
Простейший способ исправить - повторить ввод:
C++
1
2
3
char phrase[20];
cin.getline(phrase,19);
cin.getline(phrase,19);
про буфер я читал, но я не понимаю вот что, если я после ввода первого числа напишу вот это
int number2;
cout<<"Enter another number: ";
cin>>number2;

второе число вводится нормально. Знак концу строки первого числа не идет в number2, так как в number2 могут быть только числа. Как только появляется переменная типа char, знак окончания строки сразу же туда уходит. Я правильно все понимаю ?
0
zss
Модератор
Эксперт С++
6401 / 5967 / 1944
Регистрация: 18.12.2011
Сообщений: 15,367
Завершенные тесты: 1
24.02.2013, 22:37 #4
Цитата Сообщение от wikikino Посмотреть сообщение
торое число вводится нормально
В этом случае знак конца строки пропускается и число читается нормально.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.02.2013, 22:37
Привет! Вот еще темы с ответами:

не могу прочитать из файлов - C++
Нужно открыть файл, считать из него имена других файлов и затем из этих файлов взять нужные данные. Из первого файла читает названия...

Не могу прочитать код - C++
добрый день имеется вот такой предзаголовочный файл #ifndef COLLISION_H #define COLLISION_H #include &quot;Shape.h&quot; ...

Не могу прочитать строку - C++
Добрый день, никак не получается прочитать строку. В том месте, где закомментировано, нужно считать строку. Подскажите, как это правильно...

Как на с++ прочитать данные из СОМ порта? - C++
Мне нужно под MS-DOS 6.22 прочитать несколько слов через СОМ порт (в пределах 2х десятков и потом эти слова проанализировать). Какое...


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

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

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