Différence entre Tableau et Pointeur

Quelle est la différence entre un tableau et un pointeur? –  Un pointeur peut être utilisé pour accéder aux éléments d’un tableau, en accédant à tout les éléments d’un tableau en utilisant l’arithmétique sur les pointeurs, ce qui rend l’accès plus rapide. Il existe une différence clé entre un pointeur et un tableau, un tableau a un emplacement dans la mémoire contenant des données. Un pointeur est un emplacement (adresse) en mémoire (sans aucune présomption sur ce qui se trouve dans cette adresse).
 
 

Les membres d’un tableau sont accessibles en utilisant l’arithmétique sur les pointeurs

Le compilateur utilise l’arithmétique sur les pointeurs pour accéder aux éléments du tableau. Par exemple, une expression comme tab [i] est traitée comme *(tab + i) par le compilateur. C’est pourquoi les expressions comme *(tab + i) fonctionnent pour un tableau et les expressions comme ptr [i] fonctionnent également pour le pointeur ptr. Voir l’exemple ci-dessous :

#include <stdio.h> 

int main() 
{ 
   int tab[] = {10, 20, 30, 40, 50, 60, 70, 80, 90}; 
   int *ptr = tab; 
   printf("tab[3] = %dn", tab[3]); 
   printf("*(tab + 3) = %dn", *(tab+ 3)); 
   printf("ptr[3] = %dn", ptr[2]); 
   printf("*(ptr + 3) = %dn", *(ptr + 3)); 
   return 0; 
} 

Sortie:
===============
tab[3] = 40
*(tab + 3) = 40
ptr[3] = 40
*(ptr + 3) = 40 
QCM-C

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.