bon j'ai un petit blem avec les listes en C ( j'avais demandé a KK comment faire mais marche pas ce qu'il m'a dit )
void teste(short x,char *(tab_char[])) {
DrawStr(10,10,tab_char[0],A_NORMAL);
}
Appel la fonction:
teste(10,{"salut","!","alors","ça va ?"};
C bizare
[edit]Edité par ParadiZe le 05-12-2001 à 00:30:15[/edit]
Si ça ne marche pas, c'est que tu ne m'avais pas montré ton appel de fonction. L'appel correct est:
teste(10,(char * []){"salut","!","alors","ça va ?"});
Le C n'est pas du BASIC! Si tu veux mettre une liste, il faut dire à GCC que c'est un tableau et préciser le type de ses éléments (char *).
[edit]Edité par Kevin Kofler le 05-12-2001 à 00:39:37[/edit]
Au fait, il faudrait que je précise que le fait de mettre une liste directement dans un appel de fonction avec un transtypage est une extension GNU, pas du C ANSI. En C ANSI, il faut utiliser une variable intermédiaire. Et même en C GNU, si tes éléments ne sont pas constants, il te faut une variable intermédiaire.