Conversion de tableau de chiffre caractère

Résolu
viktorfrankestein Messages postés 12 Date d'inscription   Statut Membre Dernière intervention   -  
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
s'il vous plait j'ai besoin de savoir comment écrire une fonction qui convertit un tableau de chiffre caractères en un tableau de chiffre décimal. merci
A voir également:

5 réponses

VlkPr3s Messages postés 235 Date d'inscription   Statut Membre Dernière intervention   130
 
Bonjour viktor,

j'ai feuilleté un peu le web, le peu d'information trouvé te renseigne comment convertir un tableau binaire en décimal. Ou comment convertir un entier en décimal.

Je pense que dès lors tu remplaces tes types entier et décimal en tableau.

Bonne recherche !!
0
Cloturernapasdesensfigure Messages postés 111 Date d'inscription   Statut Membre Dernière intervention   5
 
Salut, cette fonction existe déjà : atoi
#include <stdlib.h>
int atoi(const char *nptr);

Cela répond à ta question ou tu cherches à réécrire cette fonction ?
0
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
atoi() est obsolète.
Pour la conversion, on utilise plutôt strtol().
0
sambia39 Messages postés 610 Date d'inscription   Statut Membre Dernière intervention   49
 
Je suis d'accord sur le principe de la conversion mais attention à son utilisation la fonction renvoie un entier et prend comme argument un pointeur de char si "12345 " est une chaine de caractère alors on aura comme résultat 12345.
Cependant de mémoire je pense t'avoir déjà répondu sur un autre
forum :https://www.developpez.net/forums/d1520536/c-cpp/c/conversion-chaine/
0
Sugel Messages postés 4076 Date d'inscription   Statut Membre Dernière intervention   727
 
coucou hibou :D
quoi de neuf ?
0
sambia39 Messages postés 610 Date d'inscription   Statut Membre Dernière intervention   49
 
Hibou ?? j'ai pas compris -_O !
à bientôt
0
Sugel Messages postés 4076 Date d'inscription   Statut Membre Dernière intervention   727
 
Utilise tout simplement la table ascii :
https://upload.wikimedia.org/wikipedia/commons/1/1b/ASCII-Table-wide.svg
'0' == 48
'9' == 57

Il te suffit donc de soustraire 48 à chacune des cases de ton tableau pour obtenir la valeur décimale correspondante.

N'oublie pas de créer une fonction vérifiant que le nombre est bien décimal avant d'effectuer la soustraction, où il y aura un risque de dépassement d'entier.
0
sambia39 Messages postés 610 Date d'inscription   Statut Membre Dernière intervention   49
 
Sinon
'0'- '0' = 0
'1' - '0' = 1
 *(ptr_int+i) = *(ptr_str+i) - '0' 

à bientôt
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
Bonjour,

Juste pour être sûr de bien comprendre... Quelle est la différence avec ta demande antérieure : https://forums.commentcamarche.net/forum/affich-31986326-conversion-de-chaine#p31988023

Peux-tu donner un exemple ?

Cdlt,
0
sambia39 Messages postés 610 Date d'inscription   Statut Membre Dernière intervention   49
 
Bonne remarque et j'en profite pour jouer au devin la prochaine question sera
@:Svp comment faire maintenant pour passer de l'entier au charactere. Merci 
--> https://www.developpez.net/forums/d1520536/c-cpp/c/conversion-chaine/#post8252159
0