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

Biblioteka fstream + zmienna string

Ostatnio zmodyfikowano 2014-03-12 22:04
Autor Wiadomość
shadow193
Temat założony przez niniejszego użytkownika
Biblioteka fstream + zmienna string
» 2014-03-12 21:33:28
Witam, mam pytanie odnośnie samego mechanizmu wczytywania/wypisywania :

C/C++
#include<iostream>
#include<fstream>
#include<string>
#include<vector>
using namespace std;

int main()
{
    vector < string > tab;
    ifstream liczby( "liczby.txt" );
    ofstream wyjscie( "wyjscie.txt" );
    string s;
   
    while( !liczby.eof() )
    { s.clear();
        liczby >> s;
        tab.push_back( s );
    }
   
    for( vector < string >::iterator it = tab.begin(); it != tab.end(); ++it )
    {
        wyjscie <<( * it ) << endl;
    }
    liczby.close();
    wyjscie.close();
    system( "PAUSE" );
   
    return 0;
}

Problem polega na tym, że ten kod działa(o dziwo).
Gdy wczytujemy z pliku, nalezy go najpierw otworzyc funkcja .open(), jednak gdy zamieszczam to przed instrukcja while plik wyjsciowy jest pusty.
Moje pytanie to : Czy w przypadku zmiennych typu string otwieranie pliku nalezy pominac(czyli jest w jakis sposob otwierany automatycznie) czy tez dziala akurat teraz, a istnieja przypadki w ktorych pominiecie tego nie zadziala i powinienem napisac cos innego?
Z gory dziekuje.
P-106229
Monika90
» 2014-03-12 22:04:22
Gdy wczytujemy z pliku, nalezy go najpierw otworzyc funkcja .open(),
konstruktor wywołuje open, jeżeli podasz mu nazwę pliku

C/C++
while( !liczby.eof() )
{ s.clear();
    liczby >> s;
    tab.push_back( s );
}
to nie jest prawidłowy sposób wczytywania ze strumienia.
P-106234
« 1 »
  Strona 1 z 1