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 :

Conversion string to char *


Sujet :

C++

  1. #1
    Membre éprouvé Avatar de uriotcea
    Homme Profil pro
    Ingénieur / physicien
    Inscrit en
    Septembre 2003
    Messages
    1 301
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur / physicien
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2003
    Messages : 1 301
    Par défaut Conversion string to char *
    Bonjour,

    j'ai le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    std::string give_unit(double v,char *unit)
    {
      std::string numb;
      /* ...*/
      return(num);
    }
     
    // appel de la fonction générant le warning
     
    char lig[1000];
    sprintf(lig,"test num = %s\n",give_unit(1e-3,"mm").c_str());
    J'obtient le warning suivant que je n'arrive pas à supprimer
    Si quelqu'un voit mon erreur

    warning: deprecated conversion from string constant to 'char*'

    Merci d'avance

  2. #2
    Membre chevronné Avatar de Lavock
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    560
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 560
    Par défaut
    Ben il t'averti que tu utilise un truc obsolète. (Autoriser avant, mais plus maintenant).

    En réalité, tu donne un const char * (string constant) là ou est attendu un char * (string). C'était autoriser avant en C y a longtemps...

    Maintenant, si dans give_unit tu ne modifie pas le char *, rien ne t'interdit de mettre const char *. Si tu le modifie, c'est pas bien de lui passez "mm".

  3. #3
    Membre éprouvé Avatar de uriotcea
    Homme Profil pro
    Ingénieur / physicien
    Inscrit en
    Septembre 2003
    Messages
    1 301
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur / physicien
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2003
    Messages : 1 301
    Par défaut
    Merci beaucoup, moi qui cherchait naivement du coté du retour de la fonction en std::string.
    Ok ca marche

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

Discussions similaires

  1. [Débutant] Conversion string vers char
    Par sachaaaz dans le forum C#
    Réponses: 6
    Dernier message: 12/03/2012, 11h42
  2. conversion string en char *
    Par nana38000 dans le forum Débuter
    Réponses: 7
    Dernier message: 02/04/2010, 14h49
  3. conversion String to char*
    Par warning dans le forum C++Builder
    Réponses: 5
    Dernier message: 07/12/2007, 11h29
  4. Conversion String vers char
    Par benwit dans le forum Langage
    Réponses: 27
    Dernier message: 30/03/2007, 14h01
  5. conversion string to char* et erreur ATL CString
    Par Aliveli dans le forum Visual C++
    Réponses: 5
    Dernier message: 28/11/2006, 22h55

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