Skip to main content

Petit probleme dans le code source a compléter pour le labirynthe

Posted in

Salut,
Dans le code C à compléter, le compilo met un erreur ici:
carte = calloc(h, sizeof(char*)); : erreur: invalid conversion from «void*» to «char*»
ainsi qu'à certain autres endroits, toujours concernant le pointeur carte.

C'est normal ?

 

On dirait que tu essayes de compiler un code C en mode C++. En C++, le cast implicite d'un void* vers tout autre type de pointeur est interdit ; il faut expliciter la conversion, ce qui expliquerait ton message d'erreur.

 

Donc dans ce cas la je met (char**)carte = calloc(...); ?? Mais ca marche pas non plus

 

Non, pour faire un cast explicite, il faut le faire devant l'expression à convertir, en l'occurence l'appel à la fonction calloc() :

carte = (char**)calloc(...);

Mais tu ne devrais pas avoir à le faire.

 

Ce qui ne marche toujours pas...

C'est pas grave je vais le faire avec new

merci

 

Je viens d'essayer : je récupère le code C fourni, je le colle dans le formulaire, je choisis le langage C, je soumets. La compilation se passe bien.