Вот моя текущая проблема: я пытаюсь создать файл размером x МБ на C++. Пользователь вводит имя файла, затем вводит число от 5 до 10 для размера файла, который он хочет создать. Позже в этом проекте я собираюсь сделать другие вещи с этим, но я застрял на первом шаге создания этой чертовой штуки.
Мой проблемный код (пока что):
char empty[1024];
for(int i = 0; i < 1024; i++)
{
empty[i] = 0;
}
fileSystem = fopen(argv[1], "w+");
for(int i = 0; i < 1024*fileSize; i++){
int temp = fputs(empty, fileSystem);
if(temp > -1){
//Sucess!
}
else{
cout<<"error"<<endl;
}
}
Теперь, если я правильно посчитал, 1 символ равен 1 байту. В 1 КБ 1024 байта, а в МБ 1024 КБ. Значит, если мне нужен файл размером 2 МБ, то я должен записать в этот файл 1024*1024*2 байта. Да?
Я не встречаю никаких ошибок, но в итоге получаю файл размером 0 байт... Я не уверен, что я делаю неправильно, поэтому любая помощь будет очень признательна!
Спасибо!