- c´est un moyen de pouvoir allouer de la mémoire dynamiquement ( lorsque le programme s´exécute)
- ou encore transmettre des variables en paramètres à des fonctions ( bcp plus rapidement)
char Tableau[100];
version " bourrin" :
void UtiliserTableau(char _Tableau[100])
{
. ..
}
version plus adaptée :
void UtiliserTableau(char *_Tableau)
{
. ..
}
- accélérer les traitements : exemple lors d´un tri d´un ensemble de données il est beaucoup plus rapide de manipuler les pointeurs vers les éléments d´une liste que les données en elle même :
typedef struct
{
long Var1;
long Var2;
long TabVar[100];
} tElement;
plutôt que de faire ceci :
tElement TabElements[1000];
vaut mieux faire cela :
tElement *pTabElements[1000];
trier ( 1000 * 4 octets) et beaucoup plus rapide que de trier ( 1000 * ( 4 + 4 + 4*100)) octets
- etc...