Maison >développement back-end >C++ >En langage C, un pointeur est un pointeur vers une structure

En langage C, un pointeur est un pointeur vers une structure

王林
王林avant
2023-08-26 18:45:051529parcourir

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 ( -> ).

Déclaration

Ce qui suit est la déclaration d'un pointeur vers une structure en programmation C -

struct tagname *ptr;

Par exemple - struct Student *s -

Access

Comment accéder à un pointeur de structure est expliqué ci-dessous.

Ptr-> membername;

Par exemple - s->sno, s->sname, s->marks;

Exemple de programme

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

Output

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

Exemple 2

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

Sortie

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer