Вставить пустую строку перед строкой файла с номером k (C++)
Дано целое число k и текстовый файл. Вставить пустую строку перед строкой файла с номером k. Если строки с таким номером нет, то оставить файл без изменений. Есть идея записать строки из файла в массив строк, выполнить действия выше и вставить этот массив в тот же файл, но не могу понять, как это реализовать, желательно без векторов.
UPD: пришлось пока что отказаться от идеи записи в массив и просто переписать из input файла в output строки + пустая строка по задаче. Но при выполнении в переименованном output файле пустые строки появляются между строками, а не до строки k.
#include <iostream>
#include <fstream>
#include <string>
#include <windows.h>
using namespace std;
int main()
{
setlocale(LC_ALL, "RUS");
int n, k;
string s;
ofstream Fo("Fo.txt");
ifstream Fi("Fi.txt");
cout << "Номер строки, перед которой будет вставлена пустая строка - ";
cin >> k;
n = 0;
while (!Fi.eof())
{
getline(Fi, s);
if (n = k)
{
Fo << endl;
}
Fo << s;
n++;
}
Fi.close();
Fo.close();
remove("Fi.txt");
rename("Fo.txt", "Fi.txt");
system("pause");
return 0;
}