Hirdetés
Új hozzászólás Aktív témák
-
aviator
tag
typedef struct koordinata
{
int x;
int y;
int z;
} koordinata;
void beolvas(koordinata* pont)
{
scanf("%d %d %d",&(pont->x),&(pont->y),&(pont->z));
}
int main()
{
int a,i;
printf("Kerem a koordinatak szamat");
scanf("%d",&a);
koordinata* koord = (koordinata*) malloc(sizeof(koordinata)*a);
for(i=0;i<a;i++)
{
beolvas(&koord[i]);
}
for(i=0;i<a;i++)
{
printf("(%d;%d;%d)",koord[i].x,koord[i].y,koord[i].z);
}
free(koord);
return 0;
}Üdv!
A feladat itt az volt, hogy függvénnyel töltsek fel egy koordinátákat tároló struktúrát ahol a struktúrák egy dinamikus tömb elemei. A feladatot sikerült megoldani, a kód így működőképes, egy dolgot viszont nagyon nem értek: A nyíl operátort ha jól tudom akkor használjuk, ha pointeren keresztül akarjuk elérni egy struktúra mezőit. Ha pointer nélkül hivatkozunk akkor a pont operátort használjuk. Ha ez így van, akkor miért van az, hogy a függvény definíciójában a pointer típusú, pont nevű paraméteren keresztül nyíllal hivatkozok a mezőkre, alul a kiíratásnál pedig már ponttal, annak ellenére, hogy a koord változó még mindig koordináta típusú pointer?
Ú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!
- Honor 70 128GB, Kártyafüggetlen, 1 Év Garanciával
- Bomba ár! Dell Latitude 7320 - i5-11GEN I 8GB I 256SSD I HDMI I 13,3" FHD I Cam I W11 I Garancia!
- Amazon Kindle 10th Generation ébresztős tok
- HIBÁTLAN iPhone 14 Pro 128GB Deep Purple -1 ÉV GARANCIA - Kártyafüggetlen, MS3102
- GYÖNYÖRŰ iPhone 13 512GB Pink -1 ÉV GARANCIA - Kártyafüggetlen, MS3080, 100% Akkumulátor
Állásajánlatok
Cég: FOTC
Város: Budapest