Kezdőoldal » Számítástechnika » Programozás » C-ben hogyan tudok létrehozni...

C-ben hogyan tudok létrehozni egy N hosszú tömböt?

Figyelt kérdés
2014. szept. 27. 23:04
 1/10 anonim ***** válasza:
tipus változónév[N];
2014. szept. 27. 23:17
Hasznos számodra ez a válasz?
 2/10 A kérdező kommentje:
Probaltam, de hibanak irja, hogy nem konstans
2014. szept. 27. 23:56
 3/10 anonim ***** válasza:
int* tomb = malloc( N );
2014. szept. 28. 00:21
Hasznos számodra ez a válasz?
 4/10 anonim ***** válasza:

Változó méretű tömböt: típusnév *t = calloc(n, sizeof(t[0]));

Vagy, ha nem kell 0-val feltöltve legyen: t = malloc(n*sizeof(t[0]));

2014. szept. 28. 00:29
Hasznos számodra ez a válasz?
 5/10 uno20001 ***** válasza:

@Wampa: a kódod pontosan N bájtot foglal le, ami egy N hosszú sztringnél jó is, lenne, de ugye az int 4 bájtos, így a példakódodban csak N/4 db intet lehetne tárolni.


---


#4: A sizeof hogy fogja egy le nem foglalt tömb első elemének méretét megállapítani?


---


Én így csinálnám

<típus> *<név> = (<típus>*)malloc(n*sizeof(<típus>));

2014. szept. 28. 09:47
Hasznos számodra ez a válasz?
 6/10 anonim ***** válasza:
#5-ös úgy hogy a sizof nem futásidőben értékelődik ki, de ha valamit nem értesz, akkor miért kritizálsz?
2014. szept. 28. 20:40
Hasznos számodra ez a válasz?
 7/10 uno20001 ***** válasza:
#6: Tényleg, igazad van! Elnézést kérek, hogy kritizáltam!
2014. szept. 28. 21:33
Hasznos számodra ez a válasz?
 8/10 anonim ***** válasza:

Mi a gond vele?

Ennek biztosan működnie kellene:


int N=10; //N erteke jelenleg 10, de valtoztathato

int tomb[N]; //N meretu egesz szamokat tartalmazo tomb


Vagy dinamikusan:

int N=10;

int * tomb = (int *) malloc( N * sizeof(int) );


Esetleg az N konstansot megadhatod "const int=10;" módon is (bár nem tudom, hogy melyik C verzió támogatja, a régebbiek még talán nem), vagy a #define N 10 sor is biztosan működik N értékének megadására.

2014. szept. 29. 08:29
Hasznos számodra ez a válasz?
 9/10 A kérdező kommentje:
köszönöm a válaszokat, a dolog nehezét az adja/adta, hogy az N-t is be kellett kérni.
2014. szept. 29. 10:12
 10/10 anonim ***** válasza:

N bekérése:

int N;

printf("Kerem az N-t: ");

scanf("%d", &N);

2014. szept. 29. 20:08
Hasznos számodra ez a válasz?

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!