begin process at 2012 05 28 10:40:53
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Caractère dans int


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Caractère dans int

lundi 7 novembre 2005 à 15:28:37 | Caractère dans int

nashoy

Bonjour,

j'ai un petit soucis : j'ai le code suivant :

int menu;
scanf("%d",&menu);

mais évidemment, quand on entre une lettre par exemple, il déglingue en faisant une boucle infinie .. y a t'il moyen de corriger ça ?

J'ai essayé d'une manière un peu "bourrin", mais ça ne donne rien :

int menu;
char test;
scanf("%d",&menu);
test = (char)menu;
if (test == menu){printf("Le chiffre indique n'est pas valable.\n");}

nashoy

lundi 7 novembre 2005 à 15:36:36 | Re : Caractère dans int

BruNews

Administrateur CodeS-SourceS
Récupère ton entrée dans une chaine et vérifie si c'est bien un chiffre entré avant de le convertir en int par atoi().

ciao...
[ Lien ]
BruNews, MVP VC++
lundi 7 novembre 2005 à 16:10:12 | Re : Caractère dans int

nashoy

Je viens de chercher des infos sur atoi() et j'ai compris ..
par contre, existe-t-il une fonction qui permet de connaitre le type de variable, ou alors de différencier un char * d'un int ?
Merci

nashoy

lundi 7 novembre 2005 à 16:17:07 | Re : Caractère dans int

BruNews

Administrateur CodeS-SourceS
Le développeur sait tout de même ce qu'il déclare comme variable, non ?

ciao...
[ Lien ]
BruNews, MVP VC++
lundi 7 novembre 2005 à 16:25:39 | Re : Caractère dans int

nashoy

Oui désolé j'ai mal posé ma question ..
La question n'était pas de connaitre le type de variable, mais le contenu ; en gros savoir si le contenu de char peut ou non être convertit en int (donc savoir si la variable ne contient que des chiffres).

nashoy

lundi 7 novembre 2005 à 16:37:44 | Re : Caractère dans int

BruNews

Administrateur CodeS-SourceS
Réponse acceptée !
if(sz[0] >= 48 && sz[0] <= 57) UN CHIFFRE

ciao...
[ Lien ]
BruNews, MVP VC++
lundi 7 novembre 2005 à 16:54:01 | Re : Caractère dans int

DeAtHCrAsH

Réponse acceptée !

int main(int argc, char *argv[])

{

int menu;

char * szSaisie;

szSaisie = (char *)malloc(8);

scanf("%s", szSaisie);

if((int)szSaisie[0] > 47 && (int)szSaisie[0] < 58)

{

menu = atoi(szSaisie);

// ToDo :

}

else

{

// Traintement spécifique pour les mauvaise saisie

}

return 0;

}




Shell
lundi 7 novembre 2005 à 19:50:53 | Re : Caractère dans int

nashoy

Cool ça marche, merci bien

nashoy

mardi 8 novembre 2005 à 09:36:59 | Re : Caractère dans int

DeAtHCrAsH

Vu que ce sont des char, tu peux enlever les cast (int) dans mon exemple.

Sinon clique sur réponse accepter pour la/les réponse(s) qui te convien(nen)t.

Shell
mardi 8 novembre 2005 à 10:07:44 | Re : Caractère dans int

nashoy

Juste une petit question : a quoi correspond if(szSaisie[0] > 47 && szSaisie[0] < 58)  alors?

nashoy


1 2

Cette discussion est classée dans : menu, int, caractère, test, scanf


Répondre à ce message

Sujets en rapport avec ce message

Correction code C [ par nicolas92c ] Bonjour, j'ai un code en C mais lors de la compilation/execution des erreurs s'affichent et je ne sais pas à quoi elles correspondent. Je suis débuta Aide pour mastermind [ par Giuventine ] Bonjour à tous, Je débute en programmation et dans le cadre du cours je dois réaliser un projet qui est le Mastermind en C. Pour cela, j'ai conçu u un menu avec des controles d'erreur de saisie [ par valveur ] Bonjour, Voila mon simple programme, le problème est sur la saisie du choix: Si je tape une lettre mon programme ne s'arrête pas. Est ce que mon excep Erreur [ par IMFM ] Bonjour, mon compilateur me donne ce message "type name expected" a chaque fois que je fais la compilation. je vais vous laisser mes codes. //Declarat Problemme de pointeur [ par malefitrix ] Bonjour a vous,donc je vous explique. int main() { unsigned int *test=2293516;//l'adresse ou ce trouve la variale toto (prog2) printf("%p %u Différence entre déclarations d'objet [ par skeleton18 ] Salut à toutes et à tous, Je ne suis pas vraiment un débutant en C++, mais j'ai une question de débutant... J'ai défini une classe Test comme ceci Client(c++Builder)/Serveur(linux) [ par willixs ] Bonjour j'ai fait un socket client sur c++ builder et un serveur socket sur linux mais j'ai un probleme c'est que j'ai créé un tableau de caractères s recherche comment faire fonctionner ce code via une interface graphique (pilotage port //) [ par cedpic ] voici le code que j ai creer qui marche tres bien en mode console mais je souhaiterais les piloter par une interface graphique en remplacent les bouto trier un tableau de stucture en c [ par peli20 ] [^^happy13]salut, j ai un petit probleme en c ,j espere que vous m aidiez.. bon, j essaie d elaborer un programme faisant la gestion des contact, le r tri d'un tableau de structure [ par sdiri_med ] bonjour pour tout le monde j'ai un petit problème de trie par age d'un tableau des employées voila mon code: [code] #include #include


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 4,072 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales