Bonjour,
Ben voilà, la deuxième ligne affiche "abc 3" au lieu de "abc 4".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 std::string s("abc"); std::cout << s.c_str() << " " << s.length() << std::endl; s.assign(s.c_str(),s.length()+1); std::cout << s.c_str() << " " << s.length() << std::endl; s.assign("abc\0",4); std::cout << s.c_str() << " " << s.length() << std::endl;
Sous MSVC6 c'est OK.
Ce n'est pas le premier effet de bord que je trouve, il y en a aussi dans std::sort.
Merci.
Partager