Ok, j'avais pas vu, ta fonction prend en paramètre un char * et tu lui donne un char (machin). Donc:
- soit en paramètre tu mets char tout court
- soit tu passes &machin et pas machin pour avoir le char*
En fait il prend la valeur du char convertit le contenu en pointeur et l'utilise, donc tu utilise un pointeur sur une zone mémoire protégée
Pour le 2eme warning, n'as-tu pas un prototype dans un .h qui n'est pas exactement comme ta fonction (du genre un qui déclare char tout court et l'autre char*)