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 :

null terminated char recu en paramentre illisible..


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Août 2008
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 135
    Par défaut null terminated char recu en paramentre illisible..
    Bonjour,

    Le problème est tellement banale que j'en ai honte.
    Dans un code c++ j'ai cette fonction:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    void DLL_EXPORT exportdata(char* value)
    Mon problème c'est que je n'arrive pas à récupérer la chaine "value".

    Cette chaîne est pourtant initialisée.

    string blabla = value, et string bla(value) ne marchent pas ...

    une idée?

  2. #2
    Membre émérite

    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    533
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 533
    Par défaut
    Le programme compile et s'exécute sans erreur mais blabla est vide, c'est bien ça ?
    Es-tu certain que la chaîne passée en argument lors de l'appel de exportdata n'est pas simplement vide ?

  3. #3
    Membre confirmé
    Inscrit en
    Août 2008
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 135
    Par défaut
    Pardon, j'ai oublié de poster la solution:
    J'avez bien choisie mes mots (: "Honte" ).
    Je sais vraiment pas pourquoi ca ne fonctionner pas.
    Dailleur j'en ai une autre du meme genre:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
    template<typename T>
    std::string to_string( const T & Value )
    {
        // utiliser un flux de sortie pour créer la chaîne
        std::ostringstream oss;
        // écrire la valeur dans le flux
        oss << Value;
        // renvoyer une string
        return oss.str();
    }  
     
     
    void DLL_EXPORT exportdoublearr(double* value, int* size)  //size est un tableau d'un seul élèment.
    {
        int sz;
        double tmp;
     
     
    // ouvrir un fichier
        ofstream outputFile2("C:\\program4data.txt",ios_base::app);
        outputFile2<<"1st ligne, val 0:"<<endl;
     
        sz = size[0];
        outputFile2<<"2nd ligne> "<<to_string(sz)<<endl;
     
        for(int x=0; x<sz; x++)
        {
            tmp = value[x];  //là ca plante
            outputFile2<<to_string(value[x])<<endl;  //et là aussi d'ailleur
        //.
        //.
        //.
    Les paramétres sont obtenus a partir d'un autre programe, j'ai bien vérifier value est inisialiser et contient en fonction des cas environ 3000 éléments.
    Jusqu'à "2nd ligne" tous se passe bien, et dans la boucle for ca plante au premier passage.

    une idée?

Discussions similaires

  1. Vérification 'Null terminated strings'
    Par Ardely dans le forum Langage
    Réponses: 4
    Dernier message: 21/06/2013, 14h03
  2. Comparaison char* et NULL
    Par mercure07 dans le forum C++
    Réponses: 3
    Dernier message: 04/12/2009, 09h49
  3. Terminer une chaîne par Null
    Par alainpeniche dans le forum C++
    Réponses: 3
    Dernier message: 13/09/2007, 13h35
  4. Adresse d'une chaine null terminated
    Par zitoune92 dans le forum Delphi
    Réponses: 3
    Dernier message: 02/04/2007, 09h18
  5. Null terminated string
    Par VoLc0m dans le forum VB 6 et antérieur
    Réponses: 11
    Dernier message: 10/05/2005, 11h06

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