• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Файлы и работа с ними!

  • Автор темы ermackprogramis
  • Дата начала
E

ermackprogramis

Перепробовал методы которые препод дала но в итоге ничего.
Вот один из них:
C++:
char filename[10];
FILE *f; //указатель на файл
puts("Enter filename")
gets(filename); //ввод имени файла
f=fopen(filename,"wb"); // открытие файла на запись
Но ничего не выйшло.
Подскажите метод какой то пожалуйста.
 
R

Rififi

ermackprogramis

ничего не выйшло.

патамуйшто строка с puts - неправильная.
и вмейсто gets используй fgets
 
L

lazybiz

Просто поставь в конце 3-й строки точку с запятой и добавь размера массиву filename символов хотя бы до 64.
 
S

solova

на всякий случай
имя файла(в месте с расширением) может быть длиной 256 по этому размер filename можно смело такой задавать
и вот ещё<div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable">может поможет</div></div><div class="sp-body"><div class="sp-content">
C++:
#include <iostream>
#include <fstream>
using namespace std;

int main () {
char c, str[256];
ifstream file;
cout << "Enter the name of an existing text file: ";
cin.get (str,256);
file.open (str);		// open file
while (file.good())	 // loop while extraction from file is possible
{
c = file.get();	  // get character from file
if (file.good())
cout << c;
}
file.close();		  // close file
return 0;
}
 
I

ierofant

Так если на C++, а не на C, то можно вообще забить на длину:
C++:
std::string filename;
std::cout << "Enter filename: ", std::cin >> filename;
std::ifstream in (filename.c_str ());
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!