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 :

Entrée a partir d'une chaine de caractère


Sujet :

C

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    180
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 180
    Points : 90
    Points
    90
    Par défaut Entrée a partir d'une chaine de caractère
    Bonjour à tous,

    Je recherche une fonction comme scanf mais qui me permette de scanner une chaine de caractère. L'inverse de sprintf en somme.
    J'ai donc pensé à sscanf et il se trouve que cette fonction existe bel et bien car mon compilateur ne me renvoie pas d'erreurs mias je ne sais pas si elle sert vraiment à faire ce que je veux et je n'arrive pas à m'en servir.

    Par exemple, j'aimerais a partir d'une chaine "265" mettre dans une variable de type int la valeur 265.

    J'ai essayé cela mais ça ne marche pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    #include <stdio.h>
     
    int main()
    {
    	char test[] = "21";
    	int nombre = 32;
    	sscanf(test,"%d",nombre);
    	printf("%s => %d", test, nombre);
    	return 0;
    }
    Merci d'avance de votre aide!

    Spartan03
    Pourquoi faire simple quand on peut faire compliqué!

  2. #2
    Membre éprouvé
    Avatar de Pouic
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 669
    Points : 977
    Points
    977
    Par défaut Re: Entrée a partir d'une chaine de caractère
    Citation Envoyé par Spartan03
    Bonjour à tous,

    Je recherche une fonction comme scanf mais qui me permette de scanner une chaine de caractère. L'inverse de sprintf en somme.
    J'ai donc pensé à sscanf et il se trouve que cette fonction existe bel et bien car mon compilateur ne me renvoie pas d'erreurs mias je ne sais pas si elle sert vraiment à faire ce que je veux et je n'arrive pas à m'en servir.

    Par exemple, j'aimerais a partir d'une chaine "265" mettre dans une variable de type int la valeur 265.

    J'ai essayé cela mais ça ne marche pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    #include <stdio.h>
     
    int main()
    {
    	char test[] = "21";
    	int nombre = 32;
    	sscanf(test,"%d",nombre);
    	printf("%s => %d", test, nombre);
    	return 0;
    }
    Merci d'avance de votre aide!

    Spartan03
    Il ne faut pas hésiter à lire la documentation associée à la fonction. Tu t'apercevras qu'il te faut passer en argument une chaine, un format, et les adresses associées aux variables que tu souhaites récupérer...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    #include <stdio.h>
     
    int main()
    {
    	char test[] = "21";
    	int nombre = 32;
    	sscanf(test,"%d", &nombre);
    	printf("%s => %d", test, nombre);
    	return 0;
    }
    Software becomes slower faster than hardware becomes faster
    [size=1]
    http://xrenault.developpez.com

  3. #3
    Membre averti Avatar de piff62
    Inscrit en
    Décembre 2003
    Messages
    431
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Décembre 2003
    Messages : 431
    Points : 417
    Points
    417
    Par défaut
    Bonjour,
    Les regles du forum sont pourtant claires .. une petite recherche s'impose avant de poster un message ..
    Ainsi, si on parcours la fac C du site .. on tombe sur ceci :
    http://c.developpez.com/faq/c/?page=...RINGS_numtostr

    N'est pas exactement ce que tu cherche ?

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    180
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 180
    Points : 90
    Points
    90
    Par défaut
    Effectivement, c'est une erreur assez bête de ma part, le pire c'est que j'utilise scanf depuis longtemps et je passe toujours les adresses en argument!

    En tout cas merci!
    Pourquoi faire simple quand on peut faire compliqué!

  5. #5
    Membre averti Avatar de piff62
    Inscrit en
    Décembre 2003
    Messages
    431
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Décembre 2003
    Messages : 431
    Points : 417
    Points
    417
    Par défaut
    Citation Envoyé par Spartan03
    Effectivement, c'est une erreur assez bête de ma part, le pire c'est que j'utilise scanf depuis longtemps et je passe toujours les adresses en argument!

    En tout cas merci!
    De rien
    N'oublie pas le bouton resolu stp
    Bon courage pour la suite

  6. #6
    Expert confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2003
    Messages
    3 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 549
    Points : 4 625
    Points
    4 625
    Par défaut
    Il est conseillé d'utiliser strtoul pour ce genre de trucs quand même.
    Boost ftw

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Extraire une date à partir d'une chaine de caractère
    Par soso78 dans le forum Windows Forms
    Réponses: 7
    Dernier message: 12/12/2007, 16h41
  2. Comment créer un document XML à partir d'une chaine de caractères
    Par imad_eddine dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 19/11/2007, 18h09
  3. Appel à une fonction à partir d'une chaine de caractères
    Par becks dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 19/09/2007, 12h14
  4. Réponses: 2
    Dernier message: 20/07/2007, 16h17
  5. Réponses: 2
    Dernier message: 29/03/2007, 14h08

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