Własna nazwa pliku w fstream

0

Witam. Jako iż jestem nowy na tym forum, chciałem wszystkich powitać.
Ok, do rzeczy.
C ++ zaczynam dopiero rozgryzać, dużo rzeczy jest dla mnie nowych, wiele jeszcze nie ogarniam.

Piszę program spełniający rolę notatnika.

Chce, aby w cin >> nazwa_pliku; można było podać nazwę pliku pod jaką ma się zapisać, jednak nie potrafię tego zrobić.
Dołączam fragment kodu :

cin >> nazwa_pliku;
				   		fstream plik( "(tu ma być nazwa pliku ktora wpisalem w programie).txt",ios::out); 

Serdecznie proszę o pomoc :)

1
 
	char cFileName[30];
	char cStr[] = ".txt";

	cin >> cFileName;

	strncat(cFileName, cStr, 30);
	fstream plik(cFileName, ios::out); 
0

Lepiej jest użyć string zamiast c-stringu, ewentualnie char cFileName[MAX_PATH]; - 29 znaków to trochę mało

1

Nie lepiej tak?

fstream plik;
string nazwa;
cin >> nazwa;
nazwa += ".txt";
fstream.open(nazwa.c_str(), fstream::out);
0

Bardzo dziekuję wszystkim. Użyłem pierwszego sposobu, wszystko działa dobrze ;)

1 użytkowników online, w tym zalogowanych: 0, gości: 1