Une fonction doit rendre à la fois le minimum et le maximum d'un tableau, et une autre doit échanger deux variables de l'appelant.
Objectif
Établir ce que chaque écriture permet, et ce qu'elle laisse inchangé.
Les deux en-têtes
void extremes(int t[], int n, int *mini, int *maxi);
void echange(int *a, int *b);
Le cas qui passe inaperçu
La version de echange qui reçoit deux int s'exécute sans erreur, n'affiche rien d'anormal, et
n'échange rien : elle a permuté ses deux copies. C'est la version la plus courante chez qui apprend
le langage, et son silence est ce qui la rend instructive.