Partager via


Erreur du compilateur C2561

'identifier' : la fonction doit retourner une valeur

La fonction a été déclarée comme retournant une valeur, mais la définition de la fonction ne contient pas d’instruction return .

Cette erreur peut être due à un prototype de fonction incorrect :

  1. Si la fonction ne retourne pas de valeur, déclarez la fonction avec le type de retour void.

  2. Vérifiez que toutes les branches possibles de la fonction retournent une valeur du type déclaré dans le prototype.

  3. Les fonctions C++ contenant des routines d’assembly inline qui stockent la valeur de retour dans le AX registre peuvent avoir besoin d’une instruction return. Copiez la valeur dans AX une variable temporaire et retournez cette variable à partir de la fonction.

L’exemple suivant génère l’erreur C2561 :

// C2561.cpp
int Test(int x) {
   if (x) {
      return;   // C2561
      // try the following line instead
      // return 1;
   }
   return 0;
}

int main() {
   Test(1);
}