C'est tout la question de savoir jusqu'à quel point il faut vérifier les entrées (ou les sorties); à tout vouloir vérifier, dans tous les moindres détails (y compris ceux qui ne sont pas censés arriver), on arrive à un ratio de ligne vérifiant les entrés très largement supérieur aux lignes utile au calcul / traitement;
Cela peut se ressentir à l'exécution; tout comme une certaine lourdeur dans le code et sa maintenabilité; j'ai un collègue qui parle de GIGO, (garbage in, garbage out), pour gérer des entrée hors normes.
Pour prendre le cas de sqrt() (fonction externe), je ne vais pas m'amuser à vérifier son retour, à la rigueur je test le nombre que je met en entrée, mais à partir du moment où je lui file un nombre positif, je sais que j'aurais un truc correcte en sortie.
Par contre pour le coup du malloc/realloc, j'aurais tendance à vouloir vérifier le résultat, je suis particulièrement sensible à ce genre de blague (par contre j'utiliserai asprintf pour faire ce qui est demandé ;
[^] # Re: Je pense que tu confonds les cas où c'est nécessaire
Posté par fearan . En réponse au journal Genèse d'un journal. Évalué à 1.
C'est tout la question de savoir jusqu'à quel point il faut vérifier les entrées (ou les sorties); à tout vouloir vérifier, dans tous les moindres détails (y compris ceux qui ne sont pas censés arriver), on arrive à un ratio de ligne vérifiant les entrés très largement supérieur aux lignes utile au calcul / traitement;
Cela peut se ressentir à l'exécution; tout comme une certaine lourdeur dans le code et sa maintenabilité; j'ai un collègue qui parle de GIGO, (garbage in, garbage out), pour gérer des entrée hors normes.
Pour prendre le cas de sqrt() (fonction externe), je ne vais pas m'amuser à vérifier son retour, à la rigueur je test le nombre que je met en entrée, mais à partir du moment où je lui file un nombre positif, je sais que j'aurais un truc correcte en sortie.
Par contre pour le coup du malloc/realloc, j'aurais tendance à vouloir vérifier le résultat, je suis particulièrement sensible à ce genre de blague (par contre j'utiliserai asprintf pour faire ce qui est demandé ;
mon préféré restera une fonction c récursive
avec un realloc dans foo; une pure merveille (de bug vicieux) ;)
Il ne faut pas décorner les boeufs avant d'avoir semé le vent