Maison  >  Article  >  développement back-end  >  Écrivez un programme C pour démontrer l'exemple des pointeurs

Écrivez un programme C pour démontrer l'exemple des pointeurs

WBOY
WBOYavant
2023-09-21 19:33:02976parcourir

Un pointeur est une variable qui stocke l'adresse d'une autre variable.

Caractéristiques des pointeurs

  • Les pointeurs économisent de l'espace mémoire.

  • Les pointeurs ont un temps d'exécution plus rapide grâce à l'accès direct aux emplacements mémoire.

  • À l'aide de pointeurs, l'accès à la mémoire est efficace, c'est-à-dire que la mémoire est allouée et libérée dynamiquement.

  • Les pointeurs sont utilisés avec les structures de données.

Déclarez un pointeur

int *p;

Cela signifie que "p" est une variable pointeur qui contient l'adresse d'une autre variable entière.

Initialisation des pointeurs

L'opérateur d'adresse (&) est utilisé pour initialiser les variables de pointeur.

Par exemple,

int qty = 175;
int *p;
p= &qty;

Écrivez un programme C pour démontrer lexemple des pointeurs

Accès à un pointeur de variable via une variable

Pour accéder à la valeur d'une variable, utilisez l'opérateur d'indirection (*).

Programme

Démonstration en direct

#include<stdio.h>
void main(){
   //Declaring variables and pointer//
   int a=2;
   int *p;
   //Declaring relation between variable and pointer//
   p=&a;
   //Printing required example statements//
   printf("Size of the integer is %d</p><p>",sizeof (int));//4//
   printf("Address of %d is %d</p><p>",a,p);//Address value//
   printf("Value of %d is %d</p><p>",a,*p);//2//
   printf("Value of next address location of %d is %d</p><p>",a,*(p+1));//Garbage value from (p+1) address//
   printf("Address of next address location of %d is %d</p><p>",a,(p+1));//Address value +4//
   //Typecasting the pointer//
   //Initializing and declaring character data type//
   //a=2 = 00000000 00000000 00000000 00000010//
   char *p0;
   p0=(char*)p;
   //Printing required statements//
   printf("Size of the character is %d</p><p>",sizeof(char));//1//
   printf("Address of %d is %d</p><p>",a,p0);//Address Value(p)//
   printf("Value of %d is %d</p><p>",a,*p0);//First byte of value a - 2//
   printf("Value of next address location of %d is %d</p><p>",a,*(p0+1));//Second byte of value a - 0//
   printf("Address of next address location of %d is %d</p><p>",a,(p0+1));//Address value(p)+1//
}

Sortie

Size of the integer is 4
Address of 2 is 6422028
Value of 2 is 2
Value of next address location of 2 is 10818512
Address of next address location of 2 is 6422032
Size of the character is 1
Address of 2 is 6422028
Value of 2 is 2
Value of next address location of 2 is 0
Address of next address location of 2 is 6422029

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