Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Structien Määrittely ja Julistaminen | Johdanto Rakenteisiin
C-Rakenteet

Structien Määrittely ja Julistaminen

Pyyhkäise näyttääksesi valikon

Määrittely

Rakenne-esittely alkaa avainsanalla struct.

main.c

main.c

1234567
struct <name_of_struct> { <type_1> <field_1>; <type_2> <field_2>; <type_N> <field_N>; };

<type_1> <field_1> – muuttujat, jotka muodostavat rakenteen. Rakenne-esittely ei vie muistia, vaan toimii ainoastaan mallina, pohjana.

Ensimmäinen tapa

Kun rakenne on määritelty, voimme luoda kyseisen tyyppisen muuttujan käyttämällä sanaa struct.

main.c

main.c

1
struct <name_of_struct> <name_of_variable>;

Usean struct-muuttujan määrittely tapahtuu samalla tavalla kuin tavallisten muuttujien määrittely:

main.c

main.c

1
struct <name_of_struct> <name_of_variable_1>, <name_of_variable_2>,<name_of_variable_3>;

Toinen menetelmä

Tämän vaihtoehdon avulla rakenne voidaan luoda heti sen määrittelyn jälkeen.

main.c

main.c

1234567
struct <name_of_struct> { <type_1> <field_1>; <type_2> <field_2>; <type_N> <field_N>; } <name_of_variable>; // defining of a variable

Tällä tavalla on kätevää luoda useita muuttujia kerralla:

main.c

main.c

1234567
struct <name_of_struct> { <type_1> <field_1>; <type_2> <field_2>; <type_N> <field_N>; } <name_of_variable_1>, <name_of_variable_2>;

Alustaminen

Rakenteen alustaminen == uuden tietotyypin muuttujan alustaminen

Rakenteen alustamiseen käytetään aaltosulkeita {...}:

main.c

main.c

12345678910
struct <name_of_struct> { <type_1> <field_1>; <type_2> <field_2>; <type_N> <field_N>; }; // initialization of struct-variable struct <name_of_struct> <name_of_variable> = {field_1, field_2, field_N};

Tässä tapauksessa kentät määritellään järjestyksessä, eikä jokaisen kentän tietotyyppiä tarvitse ilmoittaa, koska se on jo määritelty rakenteen kaavassa.

struct+rakenne

Käytetään esimerkkinä Student-rakennetta — se sisältää kaikki tarvittavat kentät opiskelijalle: id, name ja age. Nyt kaikki tiedot ovat yhdessä paikassa, ja meillä on erillinen rakenne, jota voimme helposti käyttää uudelleen.

question mark

Valitse vaihtoehto, jossa rakenne on määritelty oikein:

Valitse oikea vastaus

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 1. Luku 3

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Osio 1. Luku 3
some-alt