Mam do napisania w ANSI C program "będący bazą rekordów przy użyciu struktur dynamicznych".
Stworzyłem już dość wyraźny szkic - program umożliwia utworzenie bazy, zapis i odczyt z pliku, pozwala na edycję rekordów, sortowanie ich wg odpowiednich pól, wyszukiwanie itp.
Problem w tym, że nie mając większego pojęcia, co kryje eitet "struktura dynamiczna", napisałem program, jak umiałem, a więc najpewniej "statycznie" (chyba, że da się użyć struktur dynamicznych nieświadomie !? ).
Swoją drogą pytałem już parę osób, zaglądałem do książek i domyślam się, że chodzi o przydzielanie pamięci (funkcja malloc..?). Z przeniesieniem tych domysłów na grunt pisanego programu mam jednak kłopot i poprosiłbym o pomoc. Cenne będą ogólne uwagi nt. owego "dynamizmu" struktur, a zwłaszcza konkretne wskazówki: co i jak zmienić z programie, by spełniał on wyzej pogrubiony wymóg.
[ANSI C] 'struktury dynamiczne'
-
- Użytkownik
- Posty: 40
- Rejestracja: 7 lip 2007, o 09:43
- Płeć: Mężczyzna
- Lokalizacja: z Folwarku
- Podziękował: 13 razy
- Pomógł: 2 razy
-
- Użytkownik
- Posty: 6607
- Rejestracja: 16 sty 2007, o 19:42
- Płeć: Mężczyzna
- Podziękował: 119 razy
- Pomógł: 1823 razy
[ANSI C] 'struktury dynamiczne'
Dynamiczna allokacja pamieci dla danej struktury to np taki kod:
Powinno byc ok. Funkcja zwraca wskaznik na nowo dynamicznie utworzona strukture w pamieci lub NULL jesli nieudalo sie przydzielic pamieci. POZDRO
Kod: Zaznacz cały
typedef struct
{
int dane;
char imie[80];
} struktura;
struktura *przydziel()
{
struktura *nowa;
nowa=(struktura*)malloc(sizeof(struktura));
if(!nowa)
{
printf("Niemozliwe przydzielenie pamieci!
");
return NULL;
}
return nowa;
}
-
- Użytkownik
- Posty: 40
- Rejestracja: 7 lip 2007, o 09:43
- Płeć: Mężczyzna
- Lokalizacja: z Folwarku
- Podziękował: 13 razy
- Pomógł: 2 razy