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

Boost C++ Discussion :

[Boost.Tokenizer] Utiliser le caractère de séparation NULL


Sujet :

Boost C++

  1. #21
    Membre chevronné
    Profil pro
    Inscrit en
    Février 2008
    Messages
    439
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 439
    Par défaut
    Citation Envoyé par k1000 Voir le message
    std::string multi_string('ma\0multi\0string\00', 0, 17);
    Cette syntaxe n'a aucun sens.

  2. #22
    Membre chevronné
    Profil pro
    Inscrit en
    Février 2008
    Messages
    439
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 439
    Par défaut
    Citation Envoyé par koala01 Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    std::string str=static_cast<std::string&> (ms);
    Un tel cast suppose que ms est
    • soit d'un type dérivant de std::string
    • soit d'un type définissant une conversion implicite vers std::string&, c'est à dire : operator std::string& ()
    auxquels cas on peut faire directement :
    Insérer des casts au hasard n'est jamais une solution!

  3. #23
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2007
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2007
    Messages : 60
    Par défaut
    Citation Envoyé par corrector Voir le message
    Cette syntaxe n'a aucun sens.
    Je pensais par là à une déclaration utilisant le contructeur, c-à-d :
    std::string multi_string = std::string('ma\0multi\0string\0\0', 0, 17);

  4. #24
    Membre chevronné
    Profil pro
    Inscrit en
    Février 2008
    Messages
    439
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 439
    Par défaut
    Citation Envoyé par k1000 Voir le message
    Je pensais par là à une déclaration utilisant le contructeur, c-à-d :
    std::string multi_string = std::string('ma\0multi\0string\0\0', 0, 17);
    Je vois que tu as corrigé un oubli : as ajouté un \.

    Il reste qu'en C++ le simple quote indique un littéral caractère (ou littéral multi-caractères) et le double quote une chaine littérale.

    Enfin, écrire explicitement le nombre 17 n'est pas génial : il suppose qu'on sache compter, hors il arrive que les programmeurs se trompent en comptant (ça arrive même très souvent : "buffer overflow"). On préfère donc laisser le compilateur compter :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    static const char init_string[ /*au compilateur de compter*/ ] = "ma\0multi\0string\0";
    std::string multi_string (init_string, 0, sizeof init_string); // initialisation directe, pas de copie

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. [MySQL] Utilisation de la valeur SQL NULL
    Par pierre50 dans le forum PHP & Base de données
    Réponses: 12
    Dernier message: 17/03/2006, 14h22
  2. [MySQL] Utilisation du caractère "`" dans les requêtes
    Par PeZ dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 07/03/2006, 16h01
  3. [BOOST]Comment utiliser la lib boost.python
    Par Invité dans le forum Bibliothèques
    Réponses: 6
    Dernier message: 30/01/2006, 11h35
  4. [XML]caractère de séparation des contenus des éléments
    Par ep31 dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 13/12/2005, 11h07
  5. [C#] Caractère de séparation
    Par borgfabr dans le forum Windows Forms
    Réponses: 2
    Dernier message: 03/03/2005, 11h51

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