Wpis z mikrobloga

#naukaprogramowania #cpp
Mam funkcje odczytująca z pliku dane i zapsiuje je do tablicy struktur, w innych funkcjach chce używać tej tablicy. Przy stałym rozmiarze to wiek jak to zrobić ale jak to zrobić kiedy rozmiar tablicy znamy przy odczycie z pliku.
  • 6
  • Odpowiedz
Nie wiem jaką masz strukturę pliku, ale być może udało by się najpierw zliczyć liczbę "rekordów", a później zaalokować pamięć?
No i jeśli jest to C++ (a nie C) i masz dostęp do STLa to użyj std::vector tak jak kolega @SuppressWarnings zasugerował.
  • Odpowiedz
@sentoxo: to se zrób własnego vectora, zaalokuj sobie najpierw tablicę o wielkości np. 10 i jeśli miejsce na elementy się kończy to tworzysz nową o np. dwa razy większym rozmiarze, przepisujesz 10 ze starej i dodajesz nowy no i trzymasz sobie też jakąś zmienną z ilością elementów
  • Odpowiedz
@sentoxo: w zależności od struktury pliku:
- jeżeli rekord ma stały rozmiar podziel rozmiar pliku przez rozmiar rekordu
- jeżeli plik tekstowy - policz liczbę linii
a potem wczytuj rekord po rekordzie...
  • Odpowiedz