Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

switch case i fstream

Ostatnio zmodyfikowano 2017-01-30 21:36
Autor Wiadomość
Krway
Temat założony przez niniejszego użytkownika
switch case i fstream
» 2017-01-23 20:52:03
Cześć to znowu ja z moimi kłopotami wynikającymi z niewiedzy. Ciągle pisze ten program i zostało kilka rzeczy jeszcze do zrobienia tylko coraz częściej wpadam na jakiś kłopot. Tym razem błąd w kompilacji
C:\Users\Grzeslaw\Desktop\c++\Na zamówienie\Sklep\Sklep.cpp||In function 'void sprzedaz(std::string, std::string)':|
C:\Users\Grzeslaw\Desktop\c++\Na zamówienie\Sklep\Sklep.cpp|199|error: jump to case label [-fpermissive]|
C:\Users\Grzeslaw\Desktop\c++\Na zamówienie\Sklep\Sklep.cpp|152|error:   crosses initialization of 'std::fstream sel'|
C:\Users\Grzeslaw\Desktop\c++\Na zamówienie\Sklep\Sklep.cpp|203|error: jump to case label [-fpermissive]|
C:\Users\Grzeslaw\Desktop\c++\Na zamówienie\Sklep\Sklep.cpp|152|error:   crosses initialization of 'std::fstream sel'|
C:\Users\Grzeslaw\Desktop\c++\Na zamówienie\Sklep\Sklep.cpp|206|error: jump to case label [-fpermissive]|
C:\Users\Grzeslaw\Desktop\c++\Na zamówienie\Sklep\Sklep.cpp|152|error:   crosses initialization of 'std::fstream sel'|
C/C++
void sprzedaz( string imie, string nazwisko )
{
    string nazwa, bnazwa;
    int ilosc, bilosc, pom = Itowar(), i = 0;
    string pargon[ pom ], zapis[ pom ], sejv;
    float cena, kwota = 0;
    bool wyjdz = false;
    char wybierz;
    for(;; )
    {
        cout << "Wybierz sposob sprzedazy [1]~Paragon [2]~Faktura [3]~Wylistuj towary [0]~Wyjdz\n";
        cin >> wybierz;
        switch( wybierz )
        {
        case 48:
            wyjdz = true;
            break;
        case 49:
            fstream sell( "towar.txt" );
            cout << "Wpisz nazwe towaru i ilosc by sprzedac\nnp. Kaczka 1\nWstaw 0 by zakonczyc\n";
            for(;; )
            {
                cin >> nazwa;
                if( nazwa == "0" )
                     break;
               
                cin >> ilosc;
                cout << endl;
                while( !sel.eof() )
                {
                    sel >> bnazwa;
                    if( bnazwa == nazwa )
                    {
                        sel >> bilosc;
                        if( ilosc > bilosc )
                        {
                            cout << "Podana ilosc wynosi wiecej niz jest w magazynie!: " << bilosc << "\nWprowadz dane jeszcze raz.\n";
                            sel.seekg( 0 );
                            break;
                        }
                        sel >> cena;
                        //kwota=kwota+cena+(cena*0,23);
                        //pargon[i]=bnazwa+ilosc+cena;
                        //zapis[i]=pargon[i];
                        i++;
                    }
                    else
                    {
                        getline( sel, sejv );
                        zapis[ i ] = bnazwa + sejv;
                        i++;
                    }
                }
                sel.seekg( 0 );
            }
            sel.close();
            sel.open( "towar.txt", ios::out |::ios::trunc );
            sel.clear();
            //fstream sel("towar.txt");
            for( int i = 0; i != pom; i++ )
            {
                if( zapis[ i ] != "" )
                     sel << zapis[ i ] << endl;
               
                sel.flush();
            }
            break;
        case 50:
            //fstream sel("towar.txt");
            break;
           
        case 51:
            lTowar();
            break;
            default:
            system( "cls" );
            cout << "Wstawiles zly znak sprobuj ponownie\n";
            continue;
        }
        if( wyjdz == true )
             break;
       
    }
}
Nie rozumiem co tym razem robię żlę domyślam się że korzystam z fstream zamiast ifstream i ofstream ale nawet kiedy fstream włączyłem w komentarze to i tak występuje błąd kompilacji.
Jak się znajdzie ktoś cierpliwy do mnie :D i mi wytłumaczy czego nie wiem i czemu nie działa będę wdzięczny ;)
P-156838
1aam2am1
» 2017-01-23 21:04:17
Weź całą zawartość case 49 w klamry {}
P-156839
Krway
Temat założony przez niniejszego użytkownika
» 2017-01-30 21:36:36
Yep pomogło, Dzięki. Teraz będę pamiętał by dbać o wielkość 'case' ;)
P-157145
« 1 »
  Strona 1 z 1