Тема: трабл з редагуванням файлів fstream
Предісторія:
Мене вже забембало шукати чергового в групі (я заступник, а староста мразь) і я вирішив написати прогу для того аби знаходити чергового системою поїнтів(почергував - +поїнт, шукає чергового з найменшою к-стю поінтів).
Проблема:
Цю фунцію я викликаю коли студент почергував і вона повинна в файлі добавити йому поінт. Але якогось нечистого вона цього не робить.
void AddPoints(int position)
{
    char students[20];
    int points, pos=1;
    fstream file;
    file.open("students.dat", ios::in | ios::out | ios::ate);
    if (file.is_open())
    {
        file.seekp(0, ios::beg);
        while (file >> students >> points)
        {
            if (pos == position)
            {
                cout << students <<' ' <<points;//прізвище початкове_значення виводить в консоль правильно
                points++;
                file << students << ' ' << points;
                cout << students << ' ' << points;//прізвище початкове_значення++ тут також виводить правильно
            }                                                     
            pos++;                                          
        }
    }
    else
    {
        
        cout << "u gay" << endl;
        system("pause");
    }
    file.close();
}але коли я дивлюся в файл або виводжу в консоль список то черговий з попередньою к-стю поінтів
P.S. так, я знаю вказівник стоїть після чергового, але воно навіть наступного не змінює
P.S.S. не кидайтесь тапочками за говно-код