Diskuze: Alokácia 2D poľa
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.
Člen
Zobrazeno 6 zpráv z 6.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.
Proč na konci uvolňuješ paměť a pak se snažíš vrátit hodnotu na adrese NULL? Možná tam bych začal
free(p_spz);
p_spz = NULL;
return *p_spz;
Ale problém. Musím tam dať podmienku, že ak je pole už vytvorené, číže funkcia už bola použitá tak musím pamäť dealokovať a potom alokovať znova. Podmienka
if (p_spz != NULL) {
free(p_spz);
}
mi nefunguje. Kde je prosím problém. A ešte mi dáva, že pole nie je inicializované.
Jestli ten kód, co jsi posílal je jen jedna funkce, tak o dealokaci se musí postarat ten, kdo tu funkci volá. Funkce má za úkol pouze to pole vytvořit.
Anebo to celé nějak předělat. To je ale práce pro tebe a ne pro nás.
Funkciu volám v maine a to po stlačení klávesu "n". Takže niečo takéto?
if ((funkcia == 'n') && (p_spz != NULL)) {
free(p_spz);
}
Zobrazeno 6 zpráv z 6.