chaînes de caractères : problème selon l'OS
Bonjour, j'utilise dev-c++ et je travaille sur un programme. Ce programme fonctionne correctement, hors je l'ai fait testé sous linux et là par contre il buggue à un certain niveau du programme.
Après moultes tests, il s'est avéré que le programme a du mal avec les chaînes de caractères sous linux. Voici le bout de code qui foire :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| bool WP_ModelObj::validateFile(const string line)
{
fstream fichierDebug;
fichierDebug.open ("debug.txt",ios::out|ios::app);
fichierDebug << "3DG1 == " << line << " : " << (line == "3DG1") << endl;
fichierDebug.close();
if (line == "3DG1")
{
return true;
}
return false;
} |
L'écriture dans le fichier sous windows renvoit :
Citation:
3DG1 == 3DG1 : 1
C'est évidement ce qui est attendu. Sous linux voici ce qui s'affiche :
La variable line à pour valeur "3DG1" avant l'appel de fonction quelquesoit l'OS. Je me demande donc si le problème ne vient pas du type du paramètre en entrée.
Je vous remercie pour l'aide que vous m'apporterais.