¿Por qué debería usar c_str () en las funciones [duplicar]
Esta pregunta ya tiene una respuesta aquí:
¿Por qué las clases std :: fstream no toman una cadena std ::? 10 respuestasEstoy leyendo el libro C ++ Primer y en el capítulo de salida de entrada de archivo utiliza:
ifstream infile(ifile.c_str());
para abrir un archivo cuyo nombre está en la cadenaifile
.
Probé el código y funciona perfectamente incluso sinc_str()
. Entonces, ¿cuál es el punto de usarlo?
¿Debo usarc_str()
cuando intento abrir un archivo desde un argumento de línea de comando? Quiero decir cuál es el uso correcto:
ifstream fin( argv[1] )
ifstream fin( argv[1].c_str() )