Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Langue C

Structure C++ avec exemple

Qu'est-ce qu'une structure en C++ ?

Une STRUCTURE est une structure de données C++ qui peut être utilisée pour stocker ensemble des éléments de différents types de données. En C++, une structure est un type de données défini par l'utilisateur. La structure crée un type de données pour regrouper des éléments de différents types de données sous un seul type de données.

Par exemple :

Supposons que vous ayez besoin de stocker des informations sur quelqu'un, son nom, sa nationalité et son âge. Vous pouvez créer des variables telles que le nom, la citoyenneté et l'âge pour stocker les données séparément.

Cependant, vous devrez peut-être stocker des informations sur de nombreuses personnes à l'avenir. Cela signifie que des variables pour différents individus seront créées. Par exemple, nom1, citoyenneté1, âge1 etc. Pour éviter cela, il est préférable de créer une structure.

Dans ce didacticiel C++, vous apprendrez :

Quand utiliser une Structure ?

Voici quelques raisons d'utiliser la structure en C++.

Initialisation de la structure C++

Pour créer une structure C++, nous utilisons le mot-clé struct, suivi d'un identifiant. L'identifiant devient le nom de la structure. Voici la syntaxe de création d'une structure C++ :

Syntaxe :

struct struct_name  
{  
     // struct members
}   

Dans la syntaxe ci-dessus, nous avons utilisé le mot-clé struct. Le struct_name est le nom de la structure.

Les membres de la structure sont ajoutés entre accolades. Ces membres appartiennent probablement à différents types de données.

Par exemple :

struct Person  
{  
    char name[30];  
     int citizenship;  
     int age;  
}  

Dans l'exemple ci-dessus, Person est une structure à trois membres. Les membres comprennent le nom, la citoyenneté et l'âge. Un membre est de type de données char, tandis que les 2 autres sont des entiers lorsqu'une structure est créée, la mémoire n'est pas allouée. La mémoire n'est allouée qu'après l'ajout d'une variable à la structure.

Créer des instances de structure

Dans l'exemple ci-dessus, nous avons créé une structure nommée Person. Nous pouvons créer une variable de structure comme suit :

Person p;

Le p est une variable struct de type Person. Nous pouvons utiliser cette variable pour accéder aux membres de la structure.

Accéder aux membres de structure

Pour accéder aux membres de la structure, nous utilisons l'instance de la structure et l'opérateur point (.). Par exemple, pour accéder à l'âge du membre de la structure Person :

p.age = 27;

Nous avons accédé à l'âge du membre de la structure Person en utilisant l'instance de la structure, p. Nous avons alors fixé la valeur de l'âge du membre à 27 ans.

Exemple 1 :

#include <iostream>    
using namespace std;
struct Person
{
	int citizenship;
	int age;
};
int main(void) {
	struct Person p;
	p.citizenship = 1;
	p.age = 27;
	cout << "Person citizenship: " << p.citizenship << endl;
	cout << "Person age: " << p.age << endl;

	return 0;
}

Sortie :

Voici une capture d'écran du code :

Explication du code :

  1. Incluez le fichier d'en-tête iostream dans notre programme pour utiliser les fonctions qui y sont définies.
  2. Incluez l'espace de noms std pour utiliser ses classes sans l'appeler.
  3. Créez une structure nommée Person.
  4. Le début du corps de la structure.
  5. Créez un membre de structure nommé citoyenneté de type entier.
  6. Créez un membre de structure nommé age de type entier.
  7. Fin du corps de la structure.
  8. Appelez la fonction main(). La logique du programme doit être ajoutée dans le corps de cette fonction.
  9. Créez une instance de la structure Person et nommez-la p.
  10. Définissez la valeur de la citoyenneté du membre de la structure sur 1.
  11. Définissez la valeur de l'âge du membre de la structure sur 27.
  12. Imprimez la valeur de la citoyenneté du membre de la structure sur la console à côté d'un autre texte.
  13. Imprimez la valeur de l'âge du membre de la structure sur la console à côté d'un autre texte.
  14. Le programme doit renvoyer une valeur s'il s'exécute correctement.
  15. Fin de la fonction main().

Pointeurs vers la structure

Il est possible de créer un pointeur qui pointe vers une structure. C'est similaire à la façon dont les pointeurs pointant vers des types de données natifs comme int, float, double, etc. sont créés. Notez qu'un pointeur en C++ stockera un emplacement mémoire.

Exemple 2 :

#include <iostream>
using namespace std;

struct Length
{
	int meters;
	float centimeters;
};

int main()
{
	Length *ptr, l;

	ptr = &l;

	cout << "Enter meters: ";
	cin >> (*ptr).meters;
	cout << "Enter centimeters: ";
	cin >> (*ptr).centimeters;
	cout << "Length = " << (*ptr).meters << " meters " << (*ptr).centimeters << " centimeters";

	return 0;
}

Sortie :

Voici une capture d'écran du code :

Explication du code :

  1. Inclure le fichier d'en-tête iostream dans notre programme afin d'utiliser ses fonctions.
  2. Incluez l'espace de noms std dans notre programme pour utiliser ses classes sans l'appeler.
  3. Créez une structure nommée Length.
  4. Début du corps de la structure Length.
  5. Créez un membre de structure nommé mètres de type de données entier.
  6. Créez un membre de structure nommé centimètres de type entier.
  7. Fin du corps de la structure Length.
  8. Appelez la fonction main().
  9. Début du corps de la fonction main().
  10. Créez une variable de pointeur *ptr et une variable normale l de type Longueur.
  11. Stockez l'adresse de la variable l dans notre variable de pointeur.
  12. Afficher un message sur la console, demandant à l'utilisateur de saisir la valeur des compteurs variables.
  13. Lire la valeur entrée par l'utilisateur via le clavier. La fonction membre mètres est accessible ici à l'aide de la variable de pointeur.
  14. Afficher un message sur la console, demandant à l'utilisateur d'entrer la valeur des centimètres variables.
  15. Lire la valeur entrée par l'utilisateur via le clavier. La fonction membre centimètres est ici accessible à l'aide de la variable pointeur.
  16. Afficher les valeurs lues par l'utilisateur sur la console à côté d'un autre texte.
  17. Le programme doit renvoyer une valeur en cas d'exécution réussie.
  18. Fin du corps de la fonction main().

Structure comme argument de fonction

Vous pouvez passer une structure à une fonction en tant qu'argument. Cela se fait de la même manière que le passage d'un argument normal. Les variables de structure peuvent également être passées à une fonction. Un bon exemple est lorsque vous devez afficher les valeurs des membres de la structure. Démontrons ceci :

Exemple 3 :

#include<iostream>
using namespace std;

struct Person
{
	int citizenship;
	int age;
};

void func(struct Person p);

int main()
{
	struct Person p;

	p.citizenship = 1;
	p.age = 27;

	func(p);
	return 0;
}
void func(struct Person p)
{
	cout << " Person citizenship: " << p.citizenship<<endl;
	cout << " Person age: " << p.age;
}

Sortie :

Voici une capture d'écran du code :

Explication du code :

  1. Inclure le fichier d'en-tête iostream dans notre fichier. Nous utiliserons alors ses fonctions sans erreur.
  2. Incluez l'espace de noms std dans notre programme pour utiliser ses classes. Nous n'aurons pas besoin d'appeler l'espace de noms pour utiliser ses classes.
  3. Créez une structure nommée Person.
  4. Début du corps de la structure Person.
  5. Créer un membre de la structure Person. Le membre est nommé citoyenneté et est de type entier.
  6. Créer un membre de la structure Person. Le membre est nommé age et est de type entier.
  7. Fin du corps de la structure Person.
  8. Créez une fonction qui prend l'instance de struct Person, p, comme argument.
  9. Appelez la fonction principale. Le { marque le début du corps de la fonction main().
  10. Créez une instance de struct Person et donnez-lui le nom p.
  11. Accédez à la citoyenneté de la variable membre de la structure en utilisant l'instance de la structure, p, et en lui attribuant la valeur 1.
  12. Accédez à l'âge de la variable membre de la structure en utilisant l'instance de la structure, p, et en lui attribuant la valeur 27.
  13. Appelez la fonction et transmettez-lui l'instance de la structure Person, p, comme argument.
  14. La fonction doit renvoyer une valeur en cas d'exécution réussie.
  15. Fin du corps de la fonction main().
  16. Créez le corps de la fonction.
  17. Le début du corps de la fonction.
  18. Accédez à la valeur de citoyenneté du membre de la structure et imprimez-la sur la console avec d'autres textes.
  19. Accédez à la valeur d'âge du membre de la structure et imprimez-la sur la console avec d'autres textes.
  20. Fin du corps de la fonction.

Limitation d'une structure C++

Voici les limites des structures :

Résumé :


Langue C

  1. Boucle do…while C++ avec exemples
  2. Instruction C++ Switch Case avec EXAMPLE
  3. Allocation dynamique C++ de tableaux avec exemple
  4. Pointeurs C++ avec exemples
  5. Type de données Char C++ avec exemples
  6. Surcharge d'opérateur C++ avec des exemples
  7. std ::list en C++ avec exemple
  8. Fonctions C++ avec exemples de programmes
  9. Différence entre structure et classe :expliquée avec un exemple C++