Bonjour,
Actuellement, j'ai une erreur avec ce code :
Alors que ce code marche :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3arg << "foo" std::string c; arg >> c;
Alors qu'en th�orie, au niveau assembleur, cela devrait �tre exactement la m�me chose.
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4 const char * const foo = "foo"; arg << foo; std::string c; arg >> c;
Or je ne copie que le pointeur vers la cha�ne de caract�res dans "arg" puis j'essaye de copier la cha�ne de caract�re dans c.
Sauf que le pointeur stock� est "inaccessible" dans le premier cas d'apr�s le d�bogueur ce qui g�n�re une segfault lorsque je fais : arg >> c.
Si je fais :
C'est � dire juste une copie du pointeur stock� dans arg vers c, j'ai aussi, dans le premier cas, une erreur de segmentation.
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3 const char * c; arg >> c; std::cout << c << std::endl;
J'ai l'impression que "foo" n'est pas stock� dans le m�me segment m�moire d'un cas � l'autre... est-ce que vous auriez une explication � cela?
Partager