Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Définition et Déclaration des Structs | Introduction aux Structs
Maîtriser les Structs en C

bookDéfinition et Déclaration des Structs

Définition

Une déclaration de structure commence par le mot-clé 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> - variables qui composeront la structure. La déclaration de la structure n'occupe pas de mémoire, c'est-à-dire qu'il s'agit simplement d'un plan, d'un modèle.

Première méthode

Une fois qu'une structure a été déclarée, il est possible de créer une variable de ce type en utilisant le mot-clé struct.

main.c

main.c

copy
1
struct <name_of_struct> <name_of_variable>;

La déclaration de plusieurs variables de structure s'effectue de la même manière que pour les variables classiques :

main.c

main.c

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

Deuxième méthode

Cette option permet d'instancier la structure immédiatement après sa définition.

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

De cette manière, il est pratique de créer plusieurs variables à la fois :

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

Initialisation

Initialiser une structure == initialiser une variable d’un nouveau type de données

Pour initialiser une structure, il faut utiliser des accolades {...} :

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

Dans ce cas, les champs seront attribués dans l'ordre et il n'est pas nécessaire d'indiquer le type de données de chaque champ, car cela a déjà été défini dans le plan de la structure.

En utilisant la structure Student comme exemple — elle comprend tous les champs nécessaires pour un étudiant : id, name et age. Désormais, toutes les données sont stockées au même endroit, et nous disposons d'une structure distincte que nous pouvons facilement réutiliser.

question mark

Sélectionnez l'option avec la déclaration de structure correcte :

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 1. Chapitre 3

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

bookDéfinition et Déclaration des Structs

Glissez pour afficher le menu

Définition

Une déclaration de structure commence par le mot-clé 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> - variables qui composeront la structure. La déclaration de la structure n'occupe pas de mémoire, c'est-à-dire qu'il s'agit simplement d'un plan, d'un modèle.

Première méthode

Une fois qu'une structure a été déclarée, il est possible de créer une variable de ce type en utilisant le mot-clé struct.

main.c

main.c

copy
1
struct <name_of_struct> <name_of_variable>;

La déclaration de plusieurs variables de structure s'effectue de la même manière que pour les variables classiques :

main.c

main.c

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

Deuxième méthode

Cette option permet d'instancier la structure immédiatement après sa définition.

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

De cette manière, il est pratique de créer plusieurs variables à la fois :

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

Initialisation

Initialiser une structure == initialiser une variable d’un nouveau type de données

Pour initialiser une structure, il faut utiliser des accolades {...} :

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

Dans ce cas, les champs seront attribués dans l'ordre et il n'est pas nécessaire d'indiquer le type de données de chaque champ, car cela a déjà été défini dans le plan de la structure.

En utilisant la structure Student comme exemple — elle comprend tous les champs nécessaires pour un étudiant : id, name et age. Désormais, toutes les données sont stockées au même endroit, et nous disposons d'une structure distincte que nous pouvons facilement réutiliser.

question mark

Sélectionnez l'option avec la déclaration de structure correcte :

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 1. Chapitre 3
some-alt