Cześć,
miałem napisać funkcję, która wczytuje dane do tablicy Koty z pliku "kotki.txt" i funkcję, która wyświetla na ekranie dane jednego kota. Korzystając z tej funkcji wypisać tablicę Koty na ekran.
Problem w tym, że po uruchomieniu programu okno konsoli "mignie" i znika.
Co może być przyczyną?
#include <iostream>
#include <fstream>
#include <sstream>
#include <cstring>
#include <string>
#include <vector>
#include <cstdlib>
struct Kot
{
char imie[10];
char rasa[20];
int wiek;
float waga;
};
//===================================================================//WCZYTYWANIE DANYCH DO TABLICY
std::vector<Kot> wczytajDane(std::ifstream& Plik);
//===================================================================//WYSWIETLANIE TABLICY
void wyswietlDane(const std::vector<Kot>& wektor);
//===================================================================//
void wyswietlDane(const std::vector<Kot>& wektor)
{
for (const auto & k : wektor)
{
std::cout << k.imie;
int i = 0;
while (i < 10)
{
std::cout << k.imie[i] << "\n";
i++;
}
std::cout << std::endl;
}
}
std::vector<Kot> wczytajDane(std::ifstream& Plik)
{
std::vector <Kot> Koty;
int i = 0;
while (!Plik.eof())
{
Kot Koty[8];
for (int i = 0; i < 8; i++)
{
Plik >> Koty->imie[i];
Plik >> Koty->rasa[i];
Plik >> Koty->wiek;
Plik >> Koty->waga;
}
}
return Koty;
}
int main()
{
Kot Koty[8];
std::ifstream Plik;
Plik.open("kotki.txt");
if (!Plik.is_open())
{
std::cout << "Plik nie moze zostac otwarty. \n";
exit(0);
}
wyswietlDane(std::move(wczytajDane(Plik)));
std::cout << "\n-------------------------\n";
std::cin.ignore();
std::cin.get();
return EXIT_SUCCESS;
}