Subversion Repositories Kolibri OS

Rev

Rev 6412 | Go to most recent revision | Blame | Last modification | View Log | Download | RSS feed

  1. #include <stdio.h>
  2. #include <stdarg.h>
  3. #include <stdlib.h>
  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
  7. {
  8.     FILE *f = (FILE *)obj;
  9.  
  10.     return fgetc(f);
  11. }
  12.  
  13. void virtual_ungetc_file(void *sp, int c, const void *obj)
  14. // if can, one step back savepoint in s
  15. {
  16.     FILE *f = (FILE *)obj;
  17.  
  18.     if (f) ungetc(c, f);
  19. }
  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.  
  39.  
  40.