IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C Discussion :

convertir un entier en une chaine de caractère


Sujet :

C

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 27
    Points : 28
    Points
    28
    Par défaut convertir un entier en une chaine de caractère
    Bonjour,

    mon programme utilise la fonction atoi pour convertir une chaine de caractères en un entier.disons par exemple qu'il convertit la chaine "program" en un entier 73,
    maintenant je veux récupérer ma chaine "program" à partir du même entier précédemment convertit (73)

    je sais pas la fonction à utiliser pour cette opération.j'ai trouvé la fonction itoa,mais celle ci convertit l'entier 73 en une chaine de caractère 73,c'est à dire rien n'est changé sauf qu'il considère ce nouveau 73 comme chaine.

    donc est ce ue quelqu'un peut me donner la fonction adéquate?
    merci d'avance

  2. #2
    Membre émérite Avatar de SofEvans
    Homme Profil pro
    Développeur C
    Inscrit en
    Mars 2009
    Messages
    1 078
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Développeur C

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 078
    Points : 2 338
    Points
    2 338
    Par défaut
    Euh, peut tu me dire comment des lettre peuvent etre convertie en entier ?

    A ma connaissance, itoa convertit "73" en 73. J'ai du mal a voir par quel miracle "program" == 73 ???
    Et j'ai encore plus de mal a voir comment on pourrait savoir que 73 == "program".

    atoi et itoa ne font, aux derniere nouvelle, pas de cryptage.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 27
    Points : 28
    Points
    28
    Par défaut
    bonjour,

    ahh non non non,j'ai pas dit que la fonction atoi convertit program en 73,je l'ai pris seulement comme exemple,j'ai du donner la vrai valeur,mais j'ai pas verifié s'il s'agit vraiment de 73 ou autre.

    en tout cas,c'est pas grave....
    merci quand même

  4. #4
    Membre éclairé
    Avatar de Pouet_forever
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    671
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 671
    Points : 842
    Points
    842
    Par défaut
    Ca n'a pas vraiment de sens dit comme ça. La chaîne "program" n'a pas vraiment de valeur. Par contre les caractères qui la composent en ont. 'p' 'r' 'o' ... 'm'. Ton but est d'additionner toutes ces lettres ?

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 27
    Points : 28
    Points
    28
    Par défaut
    bonjour,

    apparement il somme les ASCII de toutes les lettres existantes dans le mot.

    donc surement il n'existe pas une fonction qui peut me retrouver le mot initial puisqu'il y a une infinité de solutions pour le mots.

    je vais chercher une autre solution pour résoudre le pb,

    merci quand meme

  6. #6
    Membre émérite Avatar de SofEvans
    Homme Profil pro
    Développeur C
    Inscrit en
    Mars 2009
    Messages
    1 078
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Développeur C

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 078
    Points : 2 338
    Points
    2 338
    Par défaut
    Bon, déjà, si tu donnais des vrai valeur et un vrai contexte, ce serait amplement plus sympa de t'aider.

    Déjà, pourquoi as tu besoins de convertir un mot en nombre ? Est ce vraiment ce que tu veux faire ?


    'a' == 97

    donc

    "program" > 'a'
    "program" > 97


    Mais évidemment, tu nous donne de fausse valeur, alors ...

    Décris mieux ton but, ton probleme, et les solution envisagé/tester (et leur résultat) !!

  7. #7
    Membre chevronné
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 104
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 104
    Points : 1 750
    Points
    1 750
    Par défaut
    Je n'ai rien compris du tout. Quel est le problème ? Qu'est-ce que tu veux faire ?

  8. #8
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Septembre 2007
    Messages
    7 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 395
    Points : 23 756
    Points
    23 756
    Par défaut
    Bonjour,

    Citation Envoyé par mariem2 Voir le message
    apparement il somme les ASCII de toutes les lettres existantes dans le mot.
    Non, pas du tout. atoi() signifie « A.S.C.I.I. to Integer » et sert à convertir un entier écrit de manière littérale dans une chaîne de caractère, par exemple "12345", ou { '1','2','3','4','5','\0' } en un entier binaire int directement utilisable.

    donc surement il n'existe pas une fonction qui peut me retrouver le mot initial puisqu'il y a une infinité de solutions pour le mots. je vais chercher une autre solution pour résoudre le pb,
    Pour résoudre quel problème ?

Discussions similaires

  1. Concaténer 2 entiers avec une chaine de caractères
    Par sifouasma dans le forum MATLAB
    Réponses: 8
    Dernier message: 28/02/2014, 17h03
  2. [PHP 5.2] Additionner des nombres entiers dans une chaine de caractères
    Par lecaptain dans le forum Langage
    Réponses: 2
    Dernier message: 23/10/2009, 12h12
  3. extraire des entiers d'une chaine de caractère
    Par 18Marie dans le forum Langage
    Réponses: 9
    Dernier message: 10/08/2006, 11h17
  4. Réponses: 10
    Dernier message: 10/10/2005, 20h46
  5. Réponses: 9
    Dernier message: 17/01/2003, 11h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo