Zmienna fstream

0

Moje pytanie po co robie tutaj zmienna fstream (tzn rozumiem zeby moc otworzyc plik i go zamknac) ale jakos nie trafia to do mnie (wiem glupie pytanie) po prostu trzeba zapamietac zeby zrobic zmienna fstream plik?

 
#include <iostream>
#include <fstream>
using namespace std;

string imie,nazwisko;
int nr_tel;

int main()
{
    cout << "Podaj imie:" << endl; cin >> imie;
    cout << "Podaj nazwisko:" << endl; cin >> nazwisko;
    cout << "Podaj nr telefonu:" << endl; cin >> nr_tel;

    fstream plik;

    plik.open("wizytowka.txt",ios::out | ios::app);

    plik<<imie<<endl;
    plik<<nazwisko<<endl;
    plik<<nr_tel<<endl;

    plik.close();

    return 0;
0

A po co tworzysz jakieś inne zmienne?
Albo jakieś funkcje?
Na co to komu?

W ogóle po co ludzie piszą kod. Z przyzwyczajenia?

#include <fstream>
#include <string>
using namespace std;

struct Person{
    string firstName, lastName, number;
};

int main(){
    Person person;

    ifstream input("input.txt");
    input >> person.firstName >> person.lastName >> person.number;

    ofstream output("output.txt");
    output << person.firstName << person.lastName << person.number << endl;
}
0

na razie jeszcze nie dotarlem do klas,struktur wiec nie bardzo wiem o co chodzi :P
czyli zmienna fstream plik jest po to by dalo sie otworzyc plik "wizytowka.txt" ?
Nie wiecie czy da sie dotrzec do wizytowka bez robienia zmiennej fstream?

1
balti napisał(a):

czyli zmienna fstream plik jest po to by dalo sie otworzyc plik "wizytowka.txt" ?

Między innymi tak

balti napisał(a):

Nie wiecie czy da sie dotrzec do wizytowka bez robienia zmiennej fstream?

Da się, np. możesz wywoływać funkcje systemowe do operacji na plikach

1

Zmienna typu "fstream" to, w odróżnieniu od np. "int", obiekt powiązany z plikiem. Każda operacja na tym obiekcie to jest operacja na tym pliku. W C są polecenia "fopen", "fclose", "fscanf" i "fprintf", ale w każdym z nich, jako parametr, przekazuje się między innymi zmienną, która jest odniesieniem do pliku (typ "FILE"). Polecenie "fopen" powoduje powiązanie zmiennej typu FILE z konkretnym plikiem i otwarcie pliku.

Można oczywiście używać funkcji systemowych z API systemu, ale po to wymyślono fstream, żeby uprościć i ujednolicić operacje na plikach. W innych jeżykach, np. Pascal i Basic, każdy otwarty plik jest reprezentowany przez numer lub zmienną specjalnego typu i w każdej operacji należy powołać się na ten numer lub zmienną lub operację wywołać na określonym obiekcie powiązanym z danym plikiem.

1 użytkowników online, w tym zalogowanych: 0, gości: 1