WItam. Zrobiłem prosty stoper z funkcją zapisu i wczytywania czasów. Problem polega na aktualizowaniu zawartości pliku. Po uruchomieniu programu i dodaniu czasów (dopisanie bądź ze stopera) czasy wyświetlają się pierwotne które były w momencie uruchamiania programu. Po ponownym uruchomieniu wyniki zostają zaktualizowane
#include <iostream>
#include <ctime>
#include <fstream>
#include <cstdlib>
#include <stdio.h>
using namespace std;
clock_t start,stop;
float wersja=1.3;
int wybor;
float wyniki[100];
int wynik;
string linia;
int nr_linii=1;
int main()
{
fstream czasy;
czasy.open("Czasy.txt", ios::in | ios::app);
if(czasy.good()==false)
{
cout<<"Nie mozna otworzyc pliku!";
}
fstream czasyin;
czasyin.open("Czasy.txt", ios::out | ios::app);
int licznik=0;
while(!czasy.eof())
{
getline(czasy, linia);
wyniki[licznik]=atof(linia.c_str());
licznik++;
}
for(;;)
{
cout << "Stoper MostTime "<<wersja<<" Console" << endl;
cout << "**********MENU************" << endl;
cout << "1. Stoper"<< endl;
cout << "2. O programie"<< endl;
cout << "3. Pokaz czasy"<< endl;
cout << "4. Dodaj czas"<< endl;
cout << "0. EXIT"<< endl;
cout <<"**********MENU************" << endl;
cout << "Wybierz:";
cin >> wybor;
switch (wybor)
{
case 1:
int czas;
cout << endl <<"Aby wlaczyc stoper wcisnij jakikolwiek klawisz " << endl;
getchar();
getchar();
start = clock();
cout << endl <<"Odliczanie trwa, wcisnij jakikolwiek klawisz aby zatrzymac odliczanie";
getchar();
stop = clock();
czas = (stop-start) / CLOCKS_PER_SEC;
czasyin<<czas<<endl;
cout << endl << "Czas to:"<< czas << " sec" << endl;
cout << endl << "*Nacisniecie klawisza spowoduje wyjscie do menu" << endl;
getchar();
break;
case 2:
cout << "Wersja "<<wersja<<" WORK-IN-PROGRESS" << endl;
cout << endl << "*Nacisniecie klawisza spowoduje wyjscie do menu" << endl;
getchar();
getchar();
break;
case 3:
cout<<"Ilosc czasow: "<<licznik<<endl<<endl;
for (int i=0; i<(licznik-1); i++)
{
cout<<wyniki[i]<<endl;
}
cout<<"Koniec czasow"<<endl;
getchar();
getchar();
break;
case 4:
cout << "Wpisz czas do pliku"<<endl;
cin>>wynik;
czasyin<<wynik<<endl;
break;
case 0:
exit(0);
break;
default:
cout << "Nie ma takiej opcji"<<endl;
cout << endl << "*Nacisniecie klawisza spowoduje wyjscie do menu" << endl;
getchar();
getchar();
}
system("cls");
}
czasy.close();
czasyin.close();
return 0;
}