Hol a hiba az alábbi C programban?
Nemrég kezdtem el C nyleven programozni. Nem igazán az én asztalom, de több ismerősöm is azt mondta, ha fizikus v. mérnök akarok lenni, az alapokat érdemes megtanulnom. Íme az alább program, mely elméletileg kiír egy változót, majd azt, hogy hány byte helyet foglal le a memóriában (elnézést ha valami elképesztő szarvashibát vétettem, mint említettem, kezdő vagyok), ám ehelyett hatszámjegyű kódokat ad ki, szerintem ez a memóriában a neki lefoglalt hely megnevezése vagy hasonló, csak nem tudom, mi ennek a neve.
#include <stdio.h>
#include <stdlib.h>
int main()
{
int meret, a;
a = 124;
printf("%d", &a);
printf("\n");
meret = sizeof(a);
printf("%d", &meret);
printf("\n");
system("PAUSE");
return 0;
}
Hol lehet a gond? ELőre is köszönöm a türelmet és segítséget.
A printf(...)-ben a &-ek nem kellenek, ha az a és a meret értékét szeretnéd kiírni.
Ha viszont a memóriában lévő helyüket akarod kiírni, akkor ne egészként írasd ki(%d), hanem pointerként (%p).
Gyanítom téged most még az első eset érint.
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
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!