Peršokti į turinį

c++ pagalbos


Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 1281 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Recommended Posts

Sukurk filmui ir jo trukmei po struktūrą:

struct Movie
{
    int year;
    std::string title;
    Duration duration;
    int viewer_count;
};

struct Duration
{
    int hours;
    int minutes;
};

Tada nusiskaityk kiek filmų yra duomenų faile ir pagal tai susikurk dinaminį filmų masyvą. Po to for cikle su std::ifstream nuskaityk kiekvieną duomenų eilutę iš failo ir užpildyk tais duomenimis kiekvieną Movies struktūros objektą masyve. Su filmo pavadinimo skaitymu kiek sudėtingiau: reikia susikurti laikiną char masyvą užpildytą nuliais, kurio dydis yra didesnis vienetu nei reikia. To reikia, jog string'as užsibaigti nuliniu simboliu, nes C ir C++ kalboje string'ai yra null-terminated. Galiausiai, nepamiršk uždaryti failo. Tai atrodytų kažkaip taip:

int n;
std::ifstream fin("Duomenys.txt"); 

fin >> n;
Movie* movies = new Movie[n];

for ( int i = 0; i < n; ++i )
{
    fin >> movies[i].year;

    char title[25 + 1] = { 0 };
    fin.read(title, 25);
    movies[i].title = title;

    fin >> movies[i].duration.hours >> movies[i].duration.minutes;
    fin >> movies[i].viewer_count;
}

fin.close();

Rikiavimo ir išvedimo nerašysiu, nes jei pastrigsi čia ir net nebandysi surikiuoti ar išvesti duomenų, mano tolimesnės pastangos nelabai padės long-term'u :).

Ai, ir dar... Nepamiršk po visko atlaisvinti atminties:

delete[] movies;
Redaguota , nario Tautedorus
Nuoroda į komentarą
Dalintis per kitą puslapį

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 1281 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Prisijungti prie diskusijos

Palikti atsakymą galite iš karto, o užsiregistruoti vėliau. Jeigu jau turite paskyrą mūsų forume, Prisijunkite.

Svečias
Atsakyti šioje temoje...

×   Įklijuotas tekstas turi teksto formatavimą.   Pašalinti teksto formatavimą

  Galimi tik 75 veidukai.

×   Nuoroda buvo automatiškai įterpta.   Įterpti nuorodą paprastai

×   Jūsų ankstesnis pranešimas buvo atkurtas.   Išvalyti redaktorių

×   Jūs negalite įkelti nuotraukas tiesiogiai.Įkelkite arba įdėkite nuotraukas iš URL.

  • Šiame puslapyje naršo:   0 nariai

    • Nėra registruotų narių peržiūrinčių šį forumą.

Skelbimai


×
×
  • Sukurti naują...