Maison >développement back-end >C++ >En langage C, un pointeur est un pointeur vers une structure
Le pointeur de structure enregistre l'ajout de la structure entière.
Il est utilisé pour créer des structures de données complexes telles que des listes chaînées, des arbres, des graphiques, etc.
Les membres d'une structure sont accessibles à l'aide d'un opérateur spécial appelé opérateur flèche ( -> ).
Ce qui suit est la déclaration d'un pointeur vers une structure en programmation C -
struct tagname *ptr;
Par exemple - struct Student *s -
Comment accéder à un pointeur de structure est expliqué ci-dessous.
Ptr-> membername;
Par exemple - s->sno, s->sname, s->marks;
Le programme suivant montre l'utilisation du pointeur de structure - p>
#include<stdio.h> struct student{ int sno; char sname[30]; float marks; }; main ( ){ struct student s; struct student *st; printf("enter sno, sname, marks:"); scanf ("%d%s%f", & s.sno, s.sname, &s. marks); st = &s; printf ("details of the student are"); printf ("Number = %d</p><p>", st ->sno); printf ("name = %s</p><p>", st->sname); printf ("marks =%f</p><p>", st ->marks); getch ( ); }
Exécutons le programme ci-dessus, will Produit le résultat suivant -
enter sno, sname, marks:1 Lucky 98 details of the student are: Number = 1 name = Lucky marks =98.000000
Considérons un autre exemple qui explique la fonctionnalité des pointeurs de structure.
Démonstration en direct
#include<stdio.h> struct person{ int age; float weight; }; int main(){ struct person *personPtr, person1; personPtr = &person1; printf("Enter age: "); scanf("%d", &personPtr->age); printf("Enter weight: "); scanf("%f", &personPtr->weight); printf("Displaying:</p><p>"); printf("Age: %d</p><p>", personPtr->age); printf("weight: %f", personPtr->weight); return 0; }
Exécutons le programme ci-dessus, il produira les résultats suivants -
Enter age: 45 Enter weight: 60 Displaying: Age: 45 weight: 60.000000
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!