Comment convertir une variable de type Char en une de type Int?
Résolu
doumbia.danse
Messages postés
46
Date d'inscription
Statut
Membre
Dernière intervention
-
fiddy Messages postés 11069 Date d'inscription Statut Contributeur Dernière intervention -
fiddy Messages postés 11069 Date d'inscription Statut Contributeur Dernière intervention -
A voir également:
- Comment convertir une variable de type Char en une de type Int?
- Clear type - Guide
- Type de ram - Guide
- Comment changer le type de fichier - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Chat type coco - Accueil - Réseaux sociaux
4 réponses
Oui, pourquoi enlever le "Bonjour" qui est mis automatiquement ?
Sinon, pour répondre à la question, cela dépend.
Est-ce que le nombre sera toujours après "re" ? Toujours en 3ème position ? Ou il peut-être n'importe où ?
Si c'est le cas, quel nombre récupérer s'il y en a plusieurs ?
Cdlt,
Google is your friend
Sinon, pour répondre à la question, cela dépend.
Est-ce que le nombre sera toujours après "re" ? Toujours en 3ème position ? Ou il peut-être n'importe où ?
Si c'est le cas, quel nombre récupérer s'il y en a plusieurs ?
Cdlt,
Google is your friend
Merci de faire attention à l'orthographe...
Sinon, non il n'y a pas de rapport. Sur l'autre post, il faut faire une pile pour pouvoir calculer une expression. Ici, pas besoin. Un simple strtol() fait l'affaire... Après, il faut savoir de combien on décale le pointeur, d'où les questions de mon premier post.
Sinon, non il n'y a pas de rapport. Sur l'autre post, il faut faire une pile pour pouvoir calculer une expression. Ici, pas besoin. Un simple strtol() fait l'affaire... Après, il faut savoir de combien on décale le pointeur, d'où les questions de mon premier post.
Bonjour je suis d'accord avec @fiddy, Mais pourquoi ne pas faire l'évaluation d'un caractère saisie et le comparer avec la plage de code ASCII ( c'est-à-dire )
Pour savoir s'il est un nombre ou pas et par la suite garder le caractère ou tout simplement l'ignoré. au lieux de dire bêtement c"est le même bite ,
car on va si-pare de caractère de nombre ,,exemple (re54 ___ re==+__et 54== ....
à bientôt
Décimal Octal Hex Binaire Caractère
--------------------------------------------------------
048 060 30 00110000 0
049 061 31 00110001 1
050 062 32 00110010 2
051 063 33 00110011 3
052 064 34 00110100 4
053 065 35 00110101 5
054 066 36 00110110 6
055 067 37 00110111 7
056 070 38 00111000 8
057 071 39 00111001 9
Pour savoir s'il est un nombre ou pas et par la suite garder le caractère ou tout simplement l'ignoré. au lieux de dire bêtement c"est le même bite ,
car on va si-pare de caractère de nombre ,,exemple (re54 ___ re==+__et 54== ....
à bientôt
Au fait Fiddy, le nombre peut se trouver n'importe où: au début, au milieu ou même à la fin; vous comprenez?
Ok.
Alors, par exemple :
Il ne te reste plus qu'à afficher le tableau.
Note, ce programme peut être largement améliorer. Notamment, s'il y a plus de 10 nombres, le tableau sera trop petit. Tu peux donc faire en sorte d'une allocation dynamique (malloc()). De plus, tu peux vérifier que nb n'est pas trop grand (nb<=INT_MAX).
Cdlt,
Alors, par exemple :
/*la chaîne contenant les nombres à récupérer*/ char chaine[]="ar12bzze345to6t7p890"; char *p=chaine; int tab[10]; char c; int ind=0; /*nb : nombre temporaire*/ int nb=0; /*permet de savoir s'il faut écrire nb dans le tableau*/ int ok=0; while( (c=*(p++)) != '\0') { if (isdigit(c)) { nb = (nb*10) + c-'0'; ok=1; } else if (ok) { tab[ind++] = nb; nb=0; ok=0; } }
Il ne te reste plus qu'à afficher le tableau.
Note, ce programme peut être largement améliorer. Notamment, s'il y a plus de 10 nombres, le tableau sera trop petit. Tu peux donc faire en sorte d'une allocation dynamique (malloc()). De plus, tu peux vérifier que nb n'est pas trop grand (nb<=INT_MAX).
Cdlt,
J'avait pris un page en note hier, mais je trouve plus.
Désolé!