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 :

Débutant : Pb avec string et char


Sujet :

C++

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 53
    Points : 42
    Points
    42
    Par défaut Débutant : Pb avec string et char
    Bonjour,
    J'aimerai convertir des strings en char *!
    J'ai lue la FAQ C++ quui traite le sujet.
    J'utilise Dev-C++

    FAQ:
    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
    #include <string>
    #include <cstring>
    #include <iostream>
     
    int main()
    {
        using namespace std;
     
        string str = "une chaîne de caractères";
        // créer le buffer pour copier la chaîne
        size_t size = str.size() + 1;
        char * buffer = new char[ size ];
        // copier la chaîne
        strncpy( buffer, str.c_str(), size );
        // utiliser le buffer
        cout << buffer << '\n'; // "une chaîne de caractères" 
        // libérer la mémoire
        delete [] buffer;
    }
    Pourquoi faut inclure #include <cstring> en plus de #include <string>?

    #include <cstring> se rapporte au c ?

    Quand je tappe le code , le complilateur ne reconnais pas la définition "string" ??

    Merci

    [Balises code rajoutées par Fiquet, merci d'y penser la prochaine fois]

  2. #2
    Membre éprouvé

    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2005
    Messages
    634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2005
    Messages : 634
    Points : 1 205
    Points
    1 205
    Par défaut
    #include <cstring> se rapporte au c ?
    Oui l'en-tête <cstring> se rapporte au C, c'est l'équivalent de <string.h>, qui n'a rien à voir avec <string> : http://c.developpez.com/faq/cpp/?pag...ng_et_string_h
    Il faut l'inclure pour utiliser les fonctions de copie de chaînes de caractères à la C (strncpy(), etc.).

    Quand je tappe le code , le complilateur ne reconnais pas la définition "string" ??
    Si tu as un compilateur C++, il le devrait.. Peut-être ton namespace avant le main() ? Mais normalement ça doit compiler sans ce code est correct.

    A noter que si tu as juste besoin d'une chaîne de caractère non modifiable (utilisable juste en lecture), tu peux simplement appeler la fonction membre string::c_str() sur ton str.

  3. #3
    Rédacteur
    Avatar de bigboomshakala
    Homme Profil pro
    Consultant Web .NET
    Inscrit en
    Avril 2004
    Messages
    2 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant Web .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 2 077
    Points : 2 757
    Points
    2 757
    Par défaut
    salut,

    il manque un return EXIT_SUCCESS à la fin. à part ça je vois pas trop le problème. tu peux nous donner le message d'erreur exact ?

Discussions similaires

  1. Probleme de string vers char* avec Sqlite
    Par nicolas_vp dans le forum C++
    Réponses: 3
    Dernier message: 28/11/2012, 19h27
  2. Erreur de compilation avec les string et char*
    Par number9 dans le forum C++
    Réponses: 3
    Dernier message: 30/04/2012, 09h58
  3. [Débutant] Liste avec des valeurs associées aux string
    Par Bouillou dans le forum C++Builder
    Réponses: 3
    Dernier message: 16/03/2006, 18h11
  4. (Problème avec...) conversion de std::string en char
    Par crossbowman dans le forum SL & STL
    Réponses: 7
    Dernier message: 05/03/2006, 19h54
  5. [Débutant] Lenteur avec TComPort
    Par PhDt76 dans le forum C++Builder
    Réponses: 22
    Dernier message: 27/09/2003, 21h43

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