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 :

Comment assigner une string


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 98
    Par défaut Comment assigner une string
    Salut à tous,
    Je voudrais savoir comment convertir un wchar_t en constante, et vice-versa.
    En fait, je voudrais d'une part assigner une string, avec la réponse d'une fonction qui est un pointeur wchar_t, sans faire de boucle si c'est possible.
    Et d'autre part assigner un wchar_t à partir d'une constante afin de transmettre LPWSTR à une fonction.

    Comment faire ?
    Merci à tous.

    Alain

  2. #2
    Membre éclairé
    Avatar de Zenol
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2004
    Messages
    812
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2004
    Messages : 812
    Par défaut
    Serait-ce ceci que tu cherche : http://cpp.developpez.com/faq/cpp/?p...TRINGS_wstring ?
    (Je n'ai pas bien comprit ta question, désoler :s)
    Mes articles Développez | Dernier article : Raytracer en haskell
    Network library : SedNL | Zenol's Blog : http://zenol.fr

    N'oubliez pas de consulter la FAQ et les cours et tutoriels.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 98
    Par défaut
    Salut,
    Merci de ta réponse.
    C'est bien strncpy() que je cherchais.
    Mais VC++ 2005 me met une alertes
    warning C4996: 'strncpy' a été déclaré désapprouvé

    Sais-tu par quoi on peut le remplacer ?

    Dernière question, où peut-on trouver une doc complète sur la librairie standarc C++

    Merci.

    Alain

  4. #4
    Membre émérite
    Homme Profil pro
    Consultant ERP
    Inscrit en
    Février 2004
    Messages
    644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant ERP

    Informations forums :
    Inscription : Février 2004
    Messages : 644
    Par défaut
    Pour la doc de la SL ou STL -> voir SGI STL sur google.

    Pour strncpy, c simplement parce que tout le monde l'utilise sans faire attention à la taille des tableaux, ce qui fait qu'il y a énormément de buffer overflow.

    Il existe std::string, ( et CString sous VC++ si je ne me goure pas ).

    Bon amusement,

  5. #5
    Membre Expert
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Par défaut
    Citation Envoyé par alainpeniche Voir le message
    C'est bien strncpy() que je cherchais.
    Ahhhhh ! -> http://cpp.developpez.com/faq/cpp/?p...GS_type_chaine

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    std::string ma_chaine =  " Rien de plus facile";

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 98
    Par défaut
    Salut,
    Merci des réponses.
    Je sais un petit peu manipuler string, mais mon prob, c'est que je veux utiliser la fonction

    LONG WINAPI RegOpenKey(
    HKEY hKey,
    LPCTSTR lpSubKey,
    PHKEY phkResult
    );

    Comment faire pour lui passer transmettre LPCTSTR
    Si je lui transmet un sString.c_str() il fait erreur, impossible de convertir la constante en LPCTSTR
    Donc je fais
    wchar_t cCle[MAX_PATH];
    //on passe par la string sCle pour assigne chaque élément de la chaîne cStr
    string sCle("Software\\Microsoft\\Windows\\CurrentVersion\\Run\\");
    for(size_t i=0; i<sCle.size();i++ ){
    cCle[i]=sCle[i];
    }
    //on met le dernier élément sur NULL
    cCle[sCle.size()]= NULL;

    je transmer cCle, et ça marche, mais je cher cherche plus simple
    Comment transmettre un LPCTSTR à partir d'une string ou d'une constante.
    En fait, j'ai essayé strncpy ne marche pas avec des wchar_t
    merci.

    Alain

  7. #7
    Membre Expert
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Par défaut
    En utilisant la fonction Rechercher ( )

    J'ai trouvé ça : http://www.developpez.net/forums/sho...d.php?t=174445

    P.S :

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

Discussions similaires

  1. [C#] Comment Splitter une string avec une string ?
    Par ADJ Design dans le forum C#
    Réponses: 12
    Dernier message: 27/07/2006, 12h10
  2. Comment comparer une string et un float ?
    Par chourmo dans le forum Langage
    Réponses: 4
    Dernier message: 15/11/2005, 12h51
  3. Comment enregistrer une string dans un fichier
    Par Dnx dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 23/09/2005, 14h52
  4. Réponses: 12
    Dernier message: 27/06/2005, 19h06
  5. Comment convertir une string en boolean ?
    Par olivier12345600 dans le forum Langage
    Réponses: 6
    Dernier message: 25/06/2005, 15h54

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