Solution de l’exercice 3.4

Il faut simplement remplacer les deux occurrences du mot char par le mot int, plus éventuellement modifier les noms des variables et de la fonction :

unsigned tablen(int *tableau)          {              for (int *p = tableau; *p; p++);              return p -tableau;          }

On notera que, bien que les entiers int n’occupent pas la même place mémoire que les caractères, les règles de l’arithmétique des pointeurs font que le nombre cherché est bien p - tableau, et non la moitié.


Retour au texte.