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 :

problème de constante !


Sujet :

C

  1. #1
    Futur Membre du Club
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    12
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 12
    Points : 7
    Points
    7
    Par défaut problème de constante !
    Voila j'ai deux petit soucis !!!

    le premier est assez complexe car c'est la génération d'une erreur inconnu pour moi !!!

    Alors contexte : je réalise un programme en C via visual C++.net 2003 , qui a pour but de récupérer des donnée sur un appareil de mesure via le bus GPIB USB !!!

    La dessus aucun problème !!!

    je récupère en sortie une variable detabuf déclarez comme suit !!!
    char databuf[bufsize]

    la commande pour récupérer l'info est la suivante !!!

    Receive (board, device, &databuf[0], cnt, STOPend | LF);

    pour afficher la réponse c'est j'utilise cette consigne !!!*

    printf( "\n Résultat = [%s]\n", databuf );

    seul problème c'est que dans ce buffer je dois récupérer deux valeur distinct !!! et je sais pas comment faire pour récupérer ces valeurs.

    -4.22581E-08,-2.30633E+01,+ Voila ce que j'ai dans le buffer !!!

    Quelqu'un a une idéee???

    Ensuite !!! je cherche si dans la création de fichier il étais possible d'ouvrir un fichier de le copier sous un autre nom et de remplir ce dernier !!!

    Pour un fichier excel par exemple !!!

    Merci de vos réponse cordialement shadowmic

  2. #2
    Membre éclairé Avatar de homeostasie
    Homme Profil pro
    Inscrit en
    Mai 2005
    Messages
    939
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 939
    Points : 862
    Points
    862
    Par défaut
    seul problème c'est que dans ce buffer je dois récupérer deux valeur distinct !!! et je sais pas comment faire pour récupérer ces valeurs.

    -4.22581E-08,-2.30633E+01,+ Voila ce que j'ai dans le buffer !!!
    Tu as exactements cela dans ton buffer, avec les virgules, l'exposant, le "+", etc?

    Si tu es dans ce cas, tu dois faire en sorte de sauvegarder caractère par caractère dans une chaine (utilisation de la concaténation: fonction sprintf(...))à partir de ton buffer databuf jusqu'à détecter une virgule. Et ainsi de suite... Ensuite il te sera possible de convertir ta chaine de caractère grâce à la fonction strtol(...).

    Pour détecter la virgule, tu peux utiliser strcmp(...) qui permet de comparer deux chaines de caractère ou sinon tout simplement comparer databuf[i] à "," et incrémenter i jusqu'è détecter le caractère de fin de chaine '\0'.

  3. #3
    Membre éclairé Avatar de homeostasie
    Homme Profil pro
    Inscrit en
    Mai 2005
    Messages
    939
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 939
    Points : 862
    Points
    862
    Par défaut
    Ensuite !!! je cherche si dans la création de fichier il étais possible d'ouvrir un fichier de le copier sous un autre nom et de remplir ce dernier !!!
    Voir ce lien:
    http://c.developpez.com/faq/c/?page=...ICHIERS_copier

  4. #4
    Futur Membre du Club
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    12
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    bingo sa me semble une piste a explorer !!!!

    Oui en fait la chaine de caractère me sort trois valeur séparé par des virgules (oui tout n'est pas passer dans mon copier coller !!! je vais essayer et vous tiend au courant merci !!!

    PS pendnat ce temps personne n'a une idée pour mes fichier !!!

  5. #5
    Membre actif Avatar de Gamdwin
    Inscrit en
    Avril 2005
    Messages
    186
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 186
    Points : 207
    Points
    207
    Par défaut
    Je t'ai déjà répondu sur HFr, je copie-colle ma réponse ici :

    La ponctuation habituellement utilisée pour terminer une phrase, en français, c'est le point, et non un triple points d'exclamation.
    Pour citer un de mes professeurs de français, au collège : "ne soyez donc pas si excité dans vos phrases, monsieur."

    Autre remarque : bien poser une question c'est déjà résoudre la moitié du problème.
    Ton problème, c'est extraire n valeurs d'une chaîne, de longueur indéfinie, chaque valeur étant séparée par un séparateur.
    Tu peux donc utiliser la fonction strtok().

    Quant à ton second souci, regarde plus attentivement les arguments de fopen(), cela devrait répondre à ta question.

  6. #6
    Rédacteur

    Avatar de gege2061
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2004
    Messages
    5 840
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Juin 2004
    Messages : 5 840
    Points : 11 625
    Points
    11 625
    Par défaut
    Bonjour,

    Citation Envoyé par shadowmic
    Oui en fait la chaine de caractère me sort trois valeur séparé par des virgules
    Découper une chaîne.

  7. #7
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par homeostasie
    Tu as exactements cela dans ton buffer, avec les virgules, l'exposant, le "+", etc?

    Si tu es dans ce cas, tu dois faire en sorte de sauvegarder caractère par caractère dans une chaine (utilisation de la concaténation: fonction sprintf(...))à partir de ton buffer databuf jusqu'à détecter une virgule. Et ainsi de suite... Ensuite il te sera possible de convertir ta chaine de caractère grâce à la fonction strtol(...).
    strtod() permet l'extraction directement. Rien à recopier... Apprendre à utiliser le 2 ème paramètre...

Discussions similaires

  1. [ZF 1.11] Problème de constante avec Zend et JS
    Par rajia dans le forum Zend Framework
    Réponses: 6
    Dernier message: 07/01/2012, 11h59
  2. Réponses: 2
    Dernier message: 05/11/2010, 12h38
  3. Problème avec constantes php
    Par asthyanax dans le forum Langage
    Réponses: 2
    Dernier message: 25/06/2007, 15h49
  4. [Configuration] Problème sur définition de constante
    Par Yobs dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 24/03/2006, 12h40
  5. Problème Constante chaîne non terminée
    Par nborde dans le forum ASP
    Réponses: 5
    Dernier message: 25/12/2005, 17h14

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