[C] Tester une entrée si c'est un entier

Résolu/Fermé
Anime4ever - 2 mars 2009 à 08:21
 Anime4ever - 3 mars 2009 à 20:38
Peace Upon U,

je sais pas si cette question est posée auparavant mais à ce que j'ai vu, ce n'est pas le cas, désolée sinon..

bref, je veux juste savoir comment tester si ma variable lue est bien un entier sachant que je l'ai déclaré un entier, bien sûr.. mais c'est juste un test pour un cas où l'utilisateur peut entrer un caractère à la place d'un entier.

Merci d'avance ^^
A voir également:

3 réponses

dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
2 mars 2009 à 10:10
hello
en C ?
man isascii
isalnum, isalpha, isascii, isblank, iscntrl, isdigit, isgraph, islower, isprint, ispunct, isspace, isupper, isxdigit - character classification routines
2
Peace Upon U,
Merci pour votre réponse

isdigit fait un beau travail, mais le problème que je dois déclarer ma variable un entier pas un caractère parce que je vais l'utiliser plus tard.. ^^
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
2 mars 2009 à 11:00
Salut,
Pour tester si ta variable lue est un entier sachant que tu l'as déclaré en entier, tu peux utiliser la valeur de retour de scanf.
Par exemple :
int a;
int ret;

printf("nombre: ");
ret=scanf("%d",&a);
if(ret==1) {
   //il s'agit d'un entier
}
1
Peace Upon U,
Merci pour votre réponse

La soultion marche à merveille. Merci beacoup fiddy!! ^__^
0
Salut,
Tu parles d'une valeur passée en entrée du programme ou d'un fonction?
0
Peace Upon U,
Merci pour votre réponse
Je parle d'une valeur lue avec scanf..^^
0