string abrir(bool& ok){
ifstream fIn;
string fich = "";
cout << "Fichero a abrir: ";
cin >> fich;
fIn.open(fich.c_str());
if (fIn.is_open()){
cout << "Fichero abierto correctamente";
ok = true;
} else{
ok = false;
cout << "Error al abrir el fichero";
}
fIn.close();
return fich;
}
no entiendo porque usa c_str() porque no deja el string solo es decir fin.open(fich) porque con eso no vale y pone esa función?