Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Definering og Deklarering af Structs | Introduktion til Structs
Practice
Projects
Quizzes & Challenges
Quizzes
Challenges
/
Beherskelse af C Structs

bookDefinering og Deklarering af Structs

Definition

En strukturdeklaration begynder med nøgleordet struct.

main.c

main.c

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

<type_1> <field_1> - variabler, der udgør strukturen. Strukturdeklarationen optager ikke hukommelse, det vil sige, at det blot er en skabelon, en model.

Første metode

Når vi har erklæret en struktur, kan vi oprette en variabel af den type ved at bruge ordet struct.

main.c

main.c

copy
1
struct <name_of_struct> <name_of_variable>;

Erklæring af flere strukturvariabler foregår på samme måde som ved almindelige variabler:

main.c

main.c

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

Anden metode

Denne mulighed gør det muligt at instantiere strukturen umiddelbart efter, at den er defineret.

main.c

main.c

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

På denne måde er det praktisk at oprette flere variabler på én gang:

main.c

main.c

copy
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>;

Initialisering

Initialisering af en struktur == initialisering af en variabel af en ny datatyp

For at initialisere en struktur skal du bruge krøllede parenteser {...}:

main.c

main.c

copy
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};

I dette tilfælde vil felterne blive tildelt i rækkefølge, og det er ikke nødvendigt at angive datatypen for hvert felt, da dette allerede er gjort i strukturens blueprint.

Ved at bruge Student-strukturen som eksempel — den indeholder alle de felter, vi har brug for til en studerende: id, name og age. Nu er alle data gemt ét sted, og vi har en separat struktur, som vi nemt kan genbruge.

question mark

Vælg den mulighed med den korrekte strukturdeklaration:

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 1. Kapitel 3

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

bookDefinering og Deklarering af Structs

Stryg for at vise menuen

Definition

En strukturdeklaration begynder med nøgleordet struct.

main.c

main.c

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

<type_1> <field_1> - variabler, der udgør strukturen. Strukturdeklarationen optager ikke hukommelse, det vil sige, at det blot er en skabelon, en model.

Første metode

Når vi har erklæret en struktur, kan vi oprette en variabel af den type ved at bruge ordet struct.

main.c

main.c

copy
1
struct <name_of_struct> <name_of_variable>;

Erklæring af flere strukturvariabler foregår på samme måde som ved almindelige variabler:

main.c

main.c

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

Anden metode

Denne mulighed gør det muligt at instantiere strukturen umiddelbart efter, at den er defineret.

main.c

main.c

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

På denne måde er det praktisk at oprette flere variabler på én gang:

main.c

main.c

copy
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>;

Initialisering

Initialisering af en struktur == initialisering af en variabel af en ny datatyp

For at initialisere en struktur skal du bruge krøllede parenteser {...}:

main.c

main.c

copy
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};

I dette tilfælde vil felterne blive tildelt i rækkefølge, og det er ikke nødvendigt at angive datatypen for hvert felt, da dette allerede er gjort i strukturens blueprint.

Ved at bruge Student-strukturen som eksempel — den indeholder alle de felter, vi har brug for til en studerende: id, name og age. Nu er alle data gemt ét sted, og vi har en separat struktur, som vi nemt kan genbruge.

question mark

Vælg den mulighed med den korrekte strukturdeklaration:

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 1. Kapitel 3
some-alt