Bonjour,

Je cherche a afficher les différents élèments d'une liste chainée, pour cela j'ai créé une fonction récursive terminal.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
    void print(cell *list) {
 
       if (list == NULL)
          return;
 
       printf("%s ",list->name);
 
       return print(list->next);
    }

A ma grande surprise ce code n'est pas valide avec la norme C90, lorsque je le compile de la maniere suivante :
gcc -Wall -g -ansi -pedantic file.c

J'ai le warning suivant :
"warning: ISO C forbids ‘return’ with expression, in function returning void"

Il n'est pas possible de faire de la récursivité terminal avec une fonction void si l'on respecte la norme C90 ?

Merci