Witam, mógłby mi ktoś pomoc z tym zadaniem:
//Napisz program, który odczytuje co trzeci znak z pliku.
//Przetestuj poprawność działania programu na bardzo krótkim pliku tekstowym, wypisując co trzeci odczytany znak na ekranie.
#include <iostream>
#include <fstream>
#include <string>
bool odczytajPlik(std::string sNazwaPliku)
{
std::ifstream plik;
plik.open(sNazwaPliku.c_str());
if(!plik.good())
return false;
plik.seekg(0);
while(!plik.eof)
{
char znak;
plik >> znak;
std::cout << znak;
plik.seekg(3, std::ios::cur);
}
return true;
}
int main()
{
if(!odczytajPlik("plik.txt"))
std::cout << "Nie odczytano pliku!" << std::endl;
return 0;
}
Program szaleje, kiedy go odpalam. Co jest przyczyną? Poza tym kiedy zwyczajnie pobieram każdy znak, to podwaja dwa ostatnie znaki. Jak to naprawić? :)