Hirdetés
Új hozzászólás Aktív témák
-
Gyuri16
senior tag
pointerek nem igy mukodnek. ar egy mutato int-re, az erteke egy memoriacim. ha hasznalod a dereferencia operatort, akkor a memoriacimen levo int erteket kapod meg (*ar). mivel te lefoglaltal malloccal 100 int-nyi helyet, ezert a kovetkezo memoriacimekre is biztonsagosan irhatsz a mutato segitsegevel. a c forditoja tudja milyen tipusra mutat a pointer, es hogy az a memoriaban mennyi helyet foglal, ezert probal neked minel jobban segiteni. ha tomb szintaxist hasznalnal akkor az i-edik helyre igy hivatkoznal: ar[i]. ha a pointeres valtozatot hasznalod akkor az elozovel ekvivalens ez: *(ar+i). nem kell a sizeof-fal itt bonyolitani a dolgokat, ezt a fordito megteszi helyetted.
itt egy peldaprogram:
#include <stdlib.h>
#include <stdio.h>
int main(){
int i, *ar;
ar=(int*)malloc(10*sizeof(int));
for (i=0;i<10;i++) {
*(ar+i)=i;
}
for (i=0;i<10;i++) {
printf("%d ", *(ar+i));
}
return 0;
} -
kingabo
őstag
Naná, hogy elszáll!
Ez mi: *(ar+(i*sizeof(int)))??? A 400-adik elemre fogsz a ciklus végén mutatni! A pointerhez, ha hozzá adsz x-et, akkor a fordító tudja, hogy hány byte-tal kell arrébb mennie a tömbben az x-edik elemhez. Ráadásul írhatnál ar[i]-t is, ami sokkal átláthatóbb. sok értelme volt annó leírnom ezeket, ha el se olvasta senki sem...
Ha meg fordítási időben tudod a tömb méretét miért szórakozol dinamikus memória kezeléssel?
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Intel Core ULTRA 9 285K +32GB 7600MHz Patriot Viper XTREME 5 DDR5 kit! (Bolti ár: kb 600ezer Ft!)
- Samsung Galaxy S25 12/256GB Navy Blue (Gari: 2029.04.10)
- POWERCOLOR RX 9070 XT 16GB GDDR6 RED DEVIL - Új, 2 év gari - Eladó!
- GIGABYTE GTX 1660 SUPER 6GB GDDR6 OC Eladó!
- BIZTOSÍTÁSSAL iPad Pro 13 M4 Ezüst + Apple Pencil Pro
- Bontatlan Moleskine Smart Writing Set Ellipse digitális e papír füzet / 12 hó jótállás
- Apple iPhone 17 Pro 256GB Deep Blue Újszerű állapot 100% akku (51 ciklus)
- Acer Nitro 5 - 15,6"FHD IPS 144 Hz - i5 10300H - 8GB - 512GB - Win11 - GTX 1650 - MAGYAR
- Apple iPhone 14 /128GB / Kártyafüggetlen / 12Hó Garancia / Akku: 85%
- GAMER PC! i5-12400F / RTX 3060 Ti / 16GB 3000MHz / 512GB NVMe / 600w
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

