странная ошибка с cin.getline - PullRequest
0 голосов
/ 09 апреля 2011

Задача состоит в том, чтобы запросить количество строк вывода в текстовом файле, а затем запросить ввод за строкой.Каждая строка содержит 2 числа рядом.Пример файла:

4 75 65 80 75 90 85 55 65

Я попытался написать код, однако, кажется, что отсутствует одна строка ввода.не могли бы вы, ребята, помочь мне?Очень признателен !!

int main () {

char file_name[81];
char buffer[81];
int lines;

cout << "input file name: ";
cin.getline(file_name,81);

cout << "input number of lines: ";
cin >> lines;

ofstream out_file(file_name);
if (!out_file)
{
    cout << "\nerror, file already exists. choose another file name.";
    return 0;
}

while (lines != 0)
{
    cout << "enter first number: "; cin.getline(buffer, 81);
    out_file << buffer << "\t";

    cout << "\nenter second number: "; cin.getline(buffer ,81);
    out_file << buffer << endl;

    lines--;

}


out_file.close();

cout << "\nprogram terminated";

cout << endl; return 0;

}

1 Ответ

0 голосов
/ 09 апреля 2011

После

cout << "input number of lines: ";
cin >> lines;

добавить

cin.ignore(1);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...