Actuellement, je retourne -1 dans mes fonctions personnalisées en C si quelque chose ne va pas et 0 pour le succès. Par exemple, travailler avec une liste chaînée et certaines fonctions nécessite une liste non vide pour fonctionner correctement. Si la liste passée en argument est vide, je renvoie -1 (erreur) et 0 si elle n'est pas vide et que la fonction a fonctionné sans problème.Que devrais-je retourner pour des erreurs dans mes fonctions en C?
Devrais-je, peut-être, retourner 1 au lieu de -1?
Est-ce la façon habituelle de faire les choses en C ou recommandez-vous une approche différente?
Si vous n'avez pas de codes d'erreur spécifiques, vous pouvez toujours retourner un bool. –
+1 ** N'a pas à être positif **, cependant, 0 pour le succès et 0 pour l'erreur est tout ce dont vous avez besoin. En fait, selon mon expérience, il est plus fréquent que les codes d'erreur soient négatifs. –
@Steve: Dans certains langages/environnements qui seraient appropriés, mais pas C. Le 0 = succès est tellement ancré dans la culture C que vous avez besoin d'une raison * vraiment bonne * pour faire autre chose. –