Ungültige Operanden für binäres

Habe ich eine Methode, um zu überprüfen, ob eine Zahl gerade oder ungerade ist:

   -(BOOL)numberIsEven:(unsigned int *)x {


  if (x & 1)
 {
  return TRUE;
 }
 else
{
 return FALSE;
  }
}

aber wenn ich es kompilieren erhalte ich die Fehlermeldung:

Invalid operands to binary %

Damit es kompiliert in der Montage als eine modulo-Funktion und Versagen, irgendwie, jedoch, wenn ich einen E-Modul-basierte Funktion (wohl langsamer) bekomme ich den gleichen Fehler!

Mir helfen, stack overflow

Dank -
Ollie

  • if (isTrue) { return true; } else { return false; } Paradigma. Oh boy.
  • Abgesehen von allen anderen Fragen, wenn Sie den Fehler beheben, nicht dereferenzieren Sie den Zeiger, Ihre Methode name ist eigentlich Quatsch, da wird true zurückgegeben, wenn *x ist ungerade.
  • Konnte Sie nach dem eigentlichen code und die Fehlermeldung? Das was du gepostet hast ist offensichtlich falsch.
InformationsquelleAutor Ollie Hirst | 2010-07-28
Schreibe einen Kommentar