Hogy tudok lefoglalni dinamikusan egy 2D-s char tömböt C-ben? Aztán mikor és hogy szabadítsam fel?
Figyelt kérdés
így néz ki:
char valami[20][10];
2013. dec. 3. 17:51
1/3 anonim válasza:
Lefoglalsz memóriát egy pointer tömbnek, majd vagy az elsőhoz lefoglalod síkban elég elemet és beállítod a pointer tömb elemeit egyeséve megfelelő darabokhoz vagy mindegyik pointerhez rendelsz egy sornyi memóriét.
Elsőnél felszabadítod azt amire az első pointer mutat, majd a pointerek tömbjét, másodikban minden pointer által mutatottat felszabadítod és végül a pointer tömbet.
Hogy mikor? Azért kezeled dinamikusan, hogy ezt te dönthesd el
Bővebben kóddal is:
Amúgy google is létezik.
2/3 anonim válasza:
az a sík az 1d akart lenni, bocsi
3/3 iostream válasza:
#include <stdlib.h>
typedef char Dim2[20][10];
int main()
{
Dim2 d;
d[0][0] = 10;
Dim2* dptr = malloc(sizeof(Dim2));
(*dptr)[0][0] = 10;
}
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!