« Programmation C/Erreurs » : différence entre les versions
Contenu supprimé Contenu ajouté
→Affichage d'un message d'erreur : Ajout fonction perror |
→Exemple : Modification de l'exemple |
||
Ligne 54 :
#include <string.h> /* strerror() */
#include <errno.h> /* errno */
static void teste(const char *nombre)
{
unsigned long res;
/* On réinitialise errno */▼
errno = 0;
/* Appel de strtoul : conversion d'une chaine en un entier unsigned long*/
/* On détecte une erreur de strtoul quand elle renvoie ULONG_MAX _et_
* que errno est non nul. En effet, si on lui passe en entrée la
Ligne 71 ⟶ 73 :
{
/* Il y a eu une erreur ! */
nombre, strerror(errno)); }
else
{
}
}
int main(void)
{
/* 2 puissance 8 : sera toujours accepte */
teste("256");
/* 2^64 - 1 : peut echouer suivant la machine */
teste("18446744073709551615");
return
}
</source>
|