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

Условие конца файла - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.64
Delpix
delpix.ru
 Аватар для Delpix
19 / 19 / 1
Регистрация: 06.05.2011
Сообщений: 235
30.05.2011, 19:22     Условие конца файла #1
Имеем функцию:
C++
1
2
3
4
5
6
7
8
9
10
11
void Inpfile (stud& s)
    {
        ifstream base("base.txt");
        if(!base)std::cout << "Can't create input file";
        base>>s.n;
        base>>s.fio;
        base>>s.gr;
        base>>s.st;
        base.close();
        
    }
Как описать условие конца файла, что было типо этого:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
void Inpfile (stud& s)
{
ifstream base("base.txt");
if(!base)std::cout << "Can't create input file";
while(!условие конца файла)
{
base>>s.n;
base>>s.fio;
base>>s.gr;
base>>s.st;
base.close();
}
}
Мне нужно чтоб данная функция записывала Инфо о студентах, а потом выводила с помощью этой:
C++
1
2
3
4
5
6
7
{
        cout<<"Табельный номер: "<<s.n<<endl;
        cout<<"Студент: "<<s.fio<<endl;
        cout<<"Год рождения:  "<<s.gr<<endl;
        cout<<"Размер стипендии: "<<s.st<<endl;
 
    }
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
OstapBender
 Аватар для OstapBender
581 / 519 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
30.05.2011, 19:26     Условие конца файла #2
так base.eof() же
asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
30.05.2011, 19:27     Условие конца файла #3
Цитата Сообщение от Delpix Посмотреть сообщение
C++
1
while(!условие конца файла)
C++
1
while(!base.eof())
Добавлено через 51 секунду
http://www.cplusplus.com/reference/iostream/ifstream/
Delpix
delpix.ru
 Аватар для Delpix
19 / 19 / 1
Регистрация: 06.05.2011
Сообщений: 235
30.05.2011, 22:26  [ТС]     Условие конца файла #4
Спасибо. Но тут проблема, Список всех студентов, не выводится (только первый выводится)
C++
1
2
3
4
5
6
7
8
9
10
void Outfile/*Ввод из файла*/(stud& s)
    { 
        ofstream base("base.txt", ios::app);
        if(!base) std::cout << "Can't create output file";
        base<<s.n<<endl;
        base<<s.fio<<endl;
        base<<s.gr<<endl;
        base<<s.st<<endl;
        base.close();
    }
Фот функция вывода, что здесь не так?
C++
1
2
3
4
5
6
7
8
void Output(stud& s)
    {
        cout<<"Табельный номер: "<<s.n<<endl;
        cout<<"Студент: "<<s.fio<<endl;
        cout<<"Год рождения:  "<<s.gr<<endl;
        cout<<"Размер стипендии: "<<s.st<<endl;
 
    }
Добавлено через 2 часа 51 минуту
Помогите
Yandex
Объявления
30.05.2011, 22:26     Условие конца файла
Ответ Создать тему
Опции темы

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