Subversion Repositories Kolibri OS

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
647 andrew_pro 1
#include 
6431 siemargl 2
#include 
3
#include 
4
 
5
int virtual_getc_file(void *sp, const void *obj)
6
// get next chat from file obj, save point is ptr to string char ptr
647 andrew_pro 7
{
6431 siemargl 8
    FILE *f = (FILE *)obj;
9
 
10
    return fgetc(f);
647 andrew_pro 11
}
6412 siemargl 12
 
6431 siemargl 13
void virtual_ungetc_file(void *sp, int c, const void *obj)
14
// if can, one step back savepoint in s
647 andrew_pro 15
{
6431 siemargl 16
    FILE *f = (FILE *)obj;
17
 
18
    if (f) ungetc(c, f);
647 andrew_pro 19
}
6431 siemargl 20
 
21
 
22
int vfscanf ( FILE * stream, const char * format, va_list arg )
23
{
24
    return format_scan(stream, format, arg, &virtual_getc_file, &virtual_ungetc_file);
25
};
26
 
27
int fscanf ( FILE * stream, const char * format, ...)
28
{
29
   va_list      arg;
30
   int  n;
31
   va_start(arg, format);
32
 
33
   n = vfscanf(stream, format, arg);
34
 
35
   va_end(arg);
36
   return n;
37
}
38