Poti folosii urmatoare functie de parsare
//ideea e sa citesti blocuri de lungime SIZE si sa prelucrezi datele din acel bloc si sa treci la urmatorul si tot asa :)
#define SIZE 8219
int idx;
char file[SIZE];
inline void read( int& x )
{
int sign=1;
while( file[idx] < '0' || file[idx] > '9' )
{
if( '-' == file[idx] )
sign=-1;
if( ++idx ==SIZE )
{
idx=0;
in.read( file, SIZE );
}
}
for( x=0; file[idx] >='0' && file[idx] <= '9'; )
{
x=x*10+file[idx]-'0';
if( ++idx == SIZE )
{
idx=0;
in.read( file, SIZE );
}
}
x*=sign;
}
Sper ca n-am gresit la implementare ....
Pentru a citi intreg fisierul poti folosi
in.getline( sir, lungime, EOF ); sau
in.read( sir, lugime ); numai ca trebuie sa ai suficienta memorie pentru asta