assigning string :: c_str () a un const char * cuando la cadena sale del alcance
Tengo dudas sobre el uso básico de C ++. El siguiente código, compilado con gcc / LInux, se imprime correctamente.
La cuerdatest
sale de alcance, así que también suc_str()
l valor @ debería ser inválido, ¿no? ¿Me equivoco o he entendido mal laconst char*
¿sentido
#include <iostream>
int main(){
const char* a = "aaaa";
std::cout << a;
{ std::string test("bbbb");a=test.c_str();}
std::cout << a;
a = "cccc";
std::cout << a;
}
aaaabbbbcccc
// print out without any problem