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 :

Plusieurs ajout dans une variable


Sujet :

C++

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 15
    Points : 10
    Points
    10
    Par défaut Plusieurs ajout dans une variable
    Bonjour,

    Voila j'ai un gros probleme... J'essaye de trouver comment ajouté au fur et a mesure des données dans un block memoire déclaré comme
    void* block = NULL;
    Je n'arrive pas a trouvé comment ajouté des données dans cette variable sans perdre les autres déja inscrites... J'aimerais essayé de faire quelque chose comme cela :
    block = "000";
    block = block + "123";
    et avoir a la fin block = 000123 mais a la place des chaine de caracteres, ce sont des données au format hexadécimal...

    Bien amicalement,
    Yugimega

  2. #2
    Membre du Club
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    53
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 53
    Points : 62
    Points
    62
    Par défaut
    en decimal, quelque chose comme "atoi" ou "atof" serait assez interressant mais en hexa...

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    309
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 309
    Points : 148
    Points
    148
    Par défaut
    C'est du bricolage mais tu peux peut-être garder tes données mémoires en caractères et faire des conversions quand tu en as besoin.

  4. #4
    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
    des données au format héxadécimal sur 3 chiffres ?
    Tu travailles avec des mots de 12 bits ?

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 15
    Points : 10
    Points
    10
    Par défaut
    Non, c'est pas un travail sur trois chiffres c'est un exemple... Mais je vais essayez de voir car ce sont des données qui sont au fromat wav qui finiseent au format LPSTR pour l'utilisation de waveout...

  6. #6
    Expert éminent sénior
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 279
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 279
    Points : 11 015
    Points
    11 015
    Par défaut
    Pour être sûr.
    Dans ton flux, tu sérializes quoi ? Des octets, des quartets ou des caractères ?

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    633
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 633
    Points : 711
    Points
    711
    Par défaut
    Bonjour,
    Citation Envoyé par yugimega
    Bonjour,

    Voila j'ai un gros probleme... J'essaye de trouver comment ajouté au fur et a mesure des données dans un block memoire déclaré comme
    void* block = NULL;
    Je n'arrive pas a trouvé comment ajouté des données dans cette variable sans perdre les autres déja inscrites... J'aimerais essayé de faire quelque chose comme cela :
    block = "000";
    block = block + "123";

    et avoir a la fin block = 000123 mais a la place des chaine de caracteres, ce sont des données au format hexadécimal...

    Bien amicalement,
    Yugimega
    Et c'est quoi ce pointeur dans lequel tu mets n'importe quoi ?

    Tu penses vraiment que ça va se concaténer tout seul, en mettant toujours les données à la même place en mémoire (car c'est à cela que revient ton code) ?

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 15
    Points : 10
    Points
    10
    Par défaut
    Ben c'est ce que j'aimerais concaténer plusieurs chaines unsigned char dans une seul... mais je n'y arrive pas et j'ai vu plein de chose sur les pointeurs mais je n'arrive pas a trouvé comment faire ce cocatenage...

  9. #9
    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
    Si t'as pas trouvé comment concaténer des chaînes, c'est que t'as pas cherché.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    std::string block;
    block = "000";
    block = block + "123";

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 15
    Points : 10
    Points
    10
    Par défaut
    Je connaissai deja cette maniere mais j'utilise des unsigned char et non des string et JE CHERCHE TOUJOURS !!!!

  11. #11
    Membre habitué
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Décembre 2005
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Décembre 2005
    Messages : 109
    Points : 161
    Points
    161
    Par défaut
    Si tu utilises des unsigned char, pourquoi block est de type void* ?

    Sinon je propose l'en-tête cstring et la fonction std::strcat, à ne pas utiliser n'importe comment.

  12. #12
    Expert éminent sénior
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 279
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 279
    Points : 11 015
    Points
    11 015
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    typedef unsigned char byte_type;
    typedef std::vector<byte_type> buffer_type;
     
    void serialize( buffer_type & dest, buffer_type const& source) {
        dest.insert(dest.end(), source.begin(), source.end());
    }

  13. #13
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 15
    Points : 10
    Points
    10
    Par défaut
    Au debut je n'avait pas vu que c'était un unsigned char et en fin de comte j'ai réussi avec la fonction memcpy...
    Désolé du derangement....
    Amicalment Yugimega...

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

Discussions similaires

  1. Stocker plusieurs valeurs dans une variable Session
    Par PrinceMaster77 dans le forum Langage
    Réponses: 3
    Dernier message: 05/01/2010, 11h04
  2. [A-07] Plusieurs controles dans une variable
    Par Daniel-Gérald dans le forum VBA Access
    Réponses: 4
    Dernier message: 02/03/2009, 15h33
  3. Réponses: 3
    Dernier message: 11/07/2008, 17h12
  4. Plusieurs espace dans une variable
    Par getupa dans le forum Linux
    Réponses: 2
    Dernier message: 03/04/2006, 16h38
  5. declarer plusieur elements dans une variable ?
    Par freebug dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 28/06/2005, 13h46

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