Erreur : assignment makes pointer from integer without a cast

Résolu
Bonsoir,

Un message d'erreur (assignment makes pointer from integer without a cast) s'affiche lorsque j'exécute ce code :

void proposerLettre(char lettre, char* mot, char* motCache, int* essais)
{
 for (int i = 0; i < strlen(mot); i++)
 {
  if (mot[i] == lettre)
  {
   motCache[i] = lettre;
  }
  else
  {
   essais = i + 1;
  }
 }
}


Quel est le problème ?

Merci d'avance.
N'oubliez pas de mettre le sujet en "résolu" lorsqu'il l'est et un petit "merci" fait toujours plaisir ;-)

EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI

Merci d'y penser dans tes prochains messages.

2 réponses

  1. Merci pour vos réponses, le problème est résolu, c'était juste une faute d'inattention ;-)
    0
    1. Modérateur
      essais = i + 1; 


      essais est de type int*
      i est de type int
      ça ne peut pas coller, que veux-tu faire là ?
      0
      1. Contributeur
        il veut probablement augmenter le nombre d'essais, et pour cela il doit déréférencer le pointeur en faisant
        *essais
        pour accéder au contenu pointé ... cependant, je ne vois pas pourquoi il y met i + 1 (mais cela c'est une autre histoire).
        0