1. Gestion des erreurs
1.1 Spécificités de Scanf
La fonction scanf est une fonction de bas niveau. Elle est certes très pratique, mais elle n'est pas facile à sécuriser. Vous trouverez un tas de tutoriels ou de sites internet qui vous diront d'utiliser fgets à la place. Mais cela ne résout pas vraiment grand-chose et peut introduire d'autres soucis.
Un petit rappel, avant de commencer à entrer dans le détail :
int main()
{
int a = 0;
scanf("%d", &a);
printf("%d\n", a);
return 0;
}
Le premier argument de la fonction est le format. Ces formats sont :
- l'entier décimal non signé : %u ;
- l'entier octal non signé : %o ;
- l'entier hexadécimal non signé : %x ou %X ;
- l'entier décimal, octal (si la saisie commence par 0x ou 0X) ou hexadécimal si commence par O) signé : %i ;
- l'entier décimal signé : %d ;
- le nombre flottant simple précision (float) : %e, %f, %g ;
- le nombre flottant double précision (double) : %le, %lf, %lg ;
- le caractère : %c ;
- la chaîne de...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première