Mire jó? (C:struct)
egy olyan változó amiben több típus van
én így szűröm le!!
de hogyan kell használni??
mi értelme van??
mert struct on kívülis megycsinálhatom a vaáltozókat!!
vagy kilehet őket egyszerre írni??
nagyon nem értem! nincsen rendes anyagom!!
"egy olyan változó amiben több típus van
én így szűröm le!!"
Egy olyan összetett típus ami több típusból van összerakva (ezek a típusok is lehetnek szintén struktúrák).
A c struktúra tulajdonképpen a pascal rekord megfelelője.
"mi értelme van??
Összetetteb dolgok leírására, (sokkal bonyorultabb lenne e nélkül főleg valami nagyon összetett adatstruktúra) pl egy nyilvántartó rendszerben az gyár,raktár,ember stb. Ezek mindegyike egy típus. Vegyük az embert. struct Ember egy olyan típus aminek van neve címe személyi azonosítója, születési ideje.
Ha az írod hogy int i akkor egy int a konkrét típus, i ennek a típusnak egy példánya. Ha azt írom hogy struct Ember e; akkor a strukt Ember egy típus e ennek egy példánya.
struct Datum {
int ev;
int ho;
int nap;
};
struct Ember {
struct Datum szuletesiido;
char* nev;
char* cim;
int szemelyiazonosito;
};
"de hogyan kell használni??"
Inkább egy egyszerűbb példát írok. Legyen egy Pont típus ami 2 int-et tartalmaz az x és y koordináltát.
struct Pont {
int x;
int y;
};
struct Pont pontom;
int main() {
pontom.x = 4;
pontom.y = 7;
}
"vagy kilehet őket egyszerre írni??"
Ha megvan valósítva a kiíró eljárás.
Mind igaz, amit az előző válaszolók írtak, de én más oldalról nézném:
Mindaddig, amíg csak egyedi változóid vannak (akár globálisak, akár lokálisak), addig mindent meg lehet csinálni struct nelkül is. Viszont ha már több adatot akarsz használni, akkor kezdenek gondjaid lenni. Mondjuk meg tudod oldani a több adat tárolását tömbökkel, csak kezd csúnya lenni a program. Pl. ha akarsz tárolni 1000 dátumot, akkor jó így is:
int ev[1000];
int ho[1000];
int nap[1000];
de olvashatóbb a dolog, ha az egybetartozó adatokat egy struktúrában tárolod
struct Datum datumok[1000];
(egyik dátuimhoz való hozzáférés: datumok[624].nap)
Ha viszont a sok egyedi tömb már nem elég jó, és pl. előre nem ismert méretű láncolt listában akarod tárolni a memóriában az adatokat, akkor egyedül a struktúra a kézenfekvő megoldás.
aha akkor fojtatom a próbálkozásokat!!
köszi szépen mindent!!
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!