Как вывести в консоль всё что храниться в файле?
Задача такая: вывести в консоль каждое пятое слово помещенное в файле New2.txt, используя динамическое распределение памяти?
using namespace std;
int main()
{
FILE * ptrFile = fopen("t:\\New2.txt", "r");
fseek(ptrFile, 0, SEEK_END);
int n = ftell(ptrFile);
rewind(ptrFile); // переместить курсор
cout << "File size is: " << n << " Bytes!" << endl;
char *ptrbuffer = new char[n];
//fread(&ptrFile[n], sizeof ptrFile[n], ptrbuffer.size(), ptrFile);
for (int i = 1; scanf("%s", n) != EOF; i++)
{
if (i % 5 == 0)
cout << n << endl;
}
fclose(ptrFile);
if (ptrFile)
delete[] ptrbuffer;
_getch();
fclose(ptrFile);
return 0;
}
Ответы (1 шт):
Автор решения: Harry
→ Ссылка
Если требование только "динамическое выделение памяти", а язык С++, я бы делал так:
int main()
{
const int wordSize = 1024;
ifstream in("new2.txt");
char *buf = new char[wordSize];
for(int i = 1; in >> buf; ++i)
if (i%5==0) cout << buf << " ";
delete[] buf;
}