Problem z dynamiczną tablicą struktur
Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?
Zarejestruj się!

Problem z dynamiczną tablicą struktur

AutorWiadomość
Temat założony przez niniejszego użytkownika
Problem z dynamiczną tablicą struktur
» 2018-09-05 10:26:16
Witam!

Mam problem z tym oto kodem. Za każdym razem nieważne jaką ilość osób podam program przyjmuje dane dla jednej osoby do momentu daty urodzin a potem po chwili wyrzuca informacje:

"Process returned -1073741819 (0xC0000005)"

Z góry dziękuje za pomoc. Załączam kod:

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


struct osoby
{
    string imie;
    int waga;
    int wiek;
    string data_urodzin;
};

int main()
{
   
    fstream plik;
    int ilosc;
   
    osoby * os = new osoby[ ilosc ];
   
    cout << "Podaj liczbe osob: ";
    cin >> ilosc;
   
    for( int i = 0; i < ilosc; i++ )
    {
        cout << "Podaj imie: ";
        cin >> os[ i ].imie;
        cout << "Podaj wage: ";
        cin >> os[ i ].waga;
        cout << "Podaj wiek: ";
        cin >> os[ i ].wiek;
        cout << "Podaj date urodzenia: ";
        cin >> os[ i ].data_urodzin;
    }
   
   
    plik.open( "osoby.txt", ios::out );
   
    for( int i = 0; i < ilosc; i++ )
    {
        plik << os[ i ].imie << "\t waga: ";
        plik << os[ i ].waga << "\t wiek: ";
        plik << os[ i ].wiek << "\t data nabycia: ";
        plik << os[ i ].data_urodzin << "\n";
    }
   
    plik.close();
   
    delete[] os;
    return 0;
}
P-172266
» 2018-09-05 13:13:34
C/C++
osoby * os = new osoby[ ilosc ];

cout << "Podaj liczbe osob: ";
cin >> ilosc;
Jakiś szczególny powód, dlaczego rezerwujesz pamięć zanim w ogóle wiesz, ile jej ma być?
P-172269
Temat założony przez niniejszego użytkownika
» 2018-09-05 13:29:42
No i błąd znaleziony. Nie wiem jak mogłem tego nie zauważyć. Bardo dziękuje za pomoc.
P-172270
« 1 »
 Strona 1 z 1