Résultats de 1 à 3 sur 3

Sujet : Conversion string -> char *

  1. #1
    Membre MP
    Inscrit
    août 2013
    Messages
    11

    Conversion string -> char *

    bonjour !

    j\'ai passé un nom de fichier en paramètre a la fonction qui lit des fichiers texte comme ceci :


    Code:
    void lire_paragraphe(string fichier_a_lire,...) 
    { 
         ifstream ifs(fichier_a_lire); 
         ... 
    }
    mais il ne me prend ma la déclaration du isftream. Entre parenthèse il faut le nom du fichier mais entre \" \".

    Comment faire pour écrire les guillemets autour du nom du fichier ?

  2. #2
    Membre MP
    Inscrit
    août 2013
    Messages
    665
    Pas besoin de mettre des guillemets, il faut faire une conversion en (char *).
    Mais il faut connaitre les conventions de string de la bibliotèque standard. Le problème c\'est qu\'avec un pointeur pointant vers le premier élément d\'un tableau(d\'un string ici) tu sais pas quand se termine ce tableau, sa taille en fait. La convention string c\'est que pour montrer que tu termines ton string, tu dois placer un char = 0 à la fin (attention différent de char = \'0\', qui n\'est pas codé 0 en ASCII).
    Quand tu utilises \" \", ce caractère est automatiquement ajouté à la fin.
    [col=#FFDD1A]( [/col][col=#FF0000]B[/col]e [col=#FF0000]S[/col]i[col=#FF0000]d[/col]e [col=#FFDD1A])[/col]

  3. #3
    Membre MP
    Inscrit
    août 2013
    Messages
    1 012
    pour convertir string => const char *, tu peux utiliser la fonction c_str( ) des string donc de la sorte:

    Code:
    void lire_paragraphe(string fichier_a_lire,...) 
    { 
        ifstream ifs( fichier_a_lire.c_str( ) ); 
    }
    devrait marcher.

    ciao
    Grégory S.

    eVias Web & Software Solutions.

    Développement Web et logiciel en tout genre et Open Source.

    FOSDEM 2008. Venez -y nombreux !

Informations du sujet

Utilisateur(s) parcourant ce sujet

il y a actuellement 1 utilisateur(s) parcourant ce sujet. (0 membre(s) et 1 visiteur(s))

Règles des messages

  • Vous ne pouvez pas créer de sujets
  • Vous ne pouvez pas répondre aux sujets
  • Vous ne pouvez pas importer de fichiers joints
  • Vous ne pouvez pas éditer vos messages
  •  
  • Les BB codes sont Activés
  • Les Smileys sont Activés
  • Le BB code [IMG] est Activé
  • Le code [VIDEO] est Activé
  • Le code HTML est Désactivé