Pour compléter tout ce qui a déjà été (bien) dis au dessus :
A condition de savoir ce que l'on fait, on peut mélanger les notions de pointeur (char *) et tableau (char[]), puisque au niveau processeur, ceux sont des adresses mémoires vers les données.
J'ai d'ailleurs fait ça pas plus tard qu'hier, pour pouvoir réallouer dynamiquement de la mémoire à un tableau, en le gérant comme un pointeur. Car avec la syntaxe char[128], la chaine de caractères ne pourra jamais être augmentée.
Au contraire, sur un pointeur, on peut faire un realloc (voir man realloc) pour ajouter de la mémoire, tout en continuant à faire par exemple des boucles avec la notation char[i] pour parcourir le tableau. Ou faire char *++ sur un tableau.
[^] # Re: Tentative d'explication
Posté par Jllc . En réponse au message quand utiliser char * et quand utiliser un tableau. Évalué à 2.
A condition de savoir ce que l'on fait, on peut mélanger les notions de pointeur (char *) et tableau (char[]), puisque au niveau processeur, ceux sont des adresses mémoires vers les données.
J'ai d'ailleurs fait ça pas plus tard qu'hier, pour pouvoir réallouer dynamiquement de la mémoire à un tableau, en le gérant comme un pointeur. Car avec la syntaxe char[128], la chaine de caractères ne pourra jamais être augmentée.
Au contraire, sur un pointeur, on peut faire un realloc (voir man realloc) pour ajouter de la mémoire, tout en continuant à faire par exemple des boucles avec la notation char[i] pour parcourir le tableau. Ou faire char *++ sur un tableau.