Changes in uspace/lib/c/include/stdio.h [1c7f381:23c8acd9] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/include/stdio.h
r1c7f381 r23c8acd9 37 37 38 38 #include <stdarg.h> 39 #include <str.h> 39 40 #include <io/verify.h> 40 #include <_bits/size_t.h> 41 #include <_bits/wchar_t.h> 41 #include <abi/kio.h> 42 42 43 43 #define EOF (-1) … … 58 58 #define BUFSIZ 4096 59 59 60 /** Forward declaration */ 61 struct _IO_FILE; 62 typedef struct _IO_FILE FILE; 63 64 extern FILE *stdin; 65 extern FILE *stdout; 66 extern FILE *stderr; 67 68 /* Character and string input functions */ 69 extern int fgetc(FILE *); 70 extern char *fgets(char *, int, FILE *); 71 72 extern int getchar(void); 73 74 /* Character and string output functions */ 75 extern int fputc(wchar_t, FILE *); 76 extern int fputs(const char *, FILE *); 77 78 extern int putchar(wchar_t); 79 extern int puts(const char *); 80 81 extern int ungetc(int, FILE *); 82 83 /* Formatted string output functions */ 84 extern int fprintf(FILE *, const char*, ...) 85 _HELENOS_PRINTF_ATTRIBUTE(2, 3); 86 extern int vfprintf(FILE *, const char *, va_list); 87 88 extern int printf(const char *, ...) 89 _HELENOS_PRINTF_ATTRIBUTE(1, 2); 90 extern int vprintf(const char *, va_list); 91 92 extern int snprintf(char *, size_t , const char *, ...) 93 _HELENOS_PRINTF_ATTRIBUTE(3, 4); 94 extern int vasprintf(char **, const char *, va_list); 95 extern int asprintf(char **, const char *, ...) 96 _HELENOS_PRINTF_ATTRIBUTE(2, 3); 97 extern int vsnprintf(char *, size_t, const char *, va_list); 98 99 /* File stream functions */ 100 extern FILE *fopen(const char *, const char *); 101 extern FILE *freopen(const char *, const char *, FILE *); 102 extern int fclose(FILE *); 103 104 extern size_t fread(void *, size_t, size_t, FILE *); 105 extern size_t fwrite(const void *, size_t, size_t, FILE *); 106 107 extern int fseek(FILE *, long, int); 108 extern void rewind(FILE *); 109 extern long ftell(FILE *); 110 extern int feof(FILE *); 111 112 extern int fflush(FILE *); 113 extern int ferror(FILE *); 114 extern void clearerr(FILE *); 115 116 extern void setvbuf(FILE *, void *, int, size_t); 117 extern void setbuf(FILE *, void *); 118 119 /* Misc file functions */ 120 extern int rename(const char *, const char *); 121 extern int remove(const char *); 122 123 #ifndef _HELENOS_SOURCE 124 #define _IONBF 0 125 #define _IOLBF 1 126 #define _IOFBF 2 127 #endif 128 129 #ifdef _HELENOS_SOURCE 130 131 /* Nonstandard extensions. */ 60 #define DEBUG(fmt, ...) \ 61 { \ 62 char _buf[256]; \ 63 int _n = snprintf(_buf, sizeof(_buf), fmt, ##__VA_ARGS__); \ 64 if (_n > 0) \ 65 (void) __SYSCALL3(SYS_KIO, KIO_WRITE, (sysarg_t) _buf, str_size(_buf)); \ 66 } 132 67 133 68 enum _buffer_type { … … 151 86 }; 152 87 153 extern int vprintf_size(const char *, va_list); 154 extern int printf_size(const char *, ...) 155 _HELENOS_PRINTF_ATTRIBUTE(1, 2); 156 extern FILE *fdopen(int, const char *); 157 extern int fileno(FILE *); 88 /** Forward declaration */ 89 struct _IO_FILE; 90 typedef struct _IO_FILE FILE; 91 92 extern FILE *stdin; 93 extern FILE *stdout; 94 extern FILE *stderr; 95 96 /* Character and string input functions */ 97 extern int fgetc(FILE *); 98 extern char *fgets(char *, int, FILE *); 99 100 extern int getchar(void); 158 101 extern char *gets(char *, size_t); 159 102 160 #include <offset.h> 103 /* Character and string output functions */ 104 extern int fputc(wchar_t, FILE *); 105 extern int fputs(const char *, FILE *); 161 106 162 extern int fseek64(FILE *, off64_t, int);163 extern off64_t ftell64(FILE*);107 extern int putchar(wchar_t); 108 extern int puts(const char *); 164 109 165 #endif 110 extern int ungetc(int, FILE *); 166 111 112 /* Formatted string output functions */ 113 extern int fprintf(FILE *, const char*, ...) 114 PRINTF_ATTRIBUTE(2, 3); 115 extern int vfprintf(FILE *, const char *, va_list); 116 117 extern int printf(const char *, ...) 118 PRINTF_ATTRIBUTE(1, 2); 119 extern int vprintf(const char *, va_list); 120 121 extern int snprintf(char *, size_t , const char *, ...) 122 PRINTF_ATTRIBUTE(3, 4); 123 extern int vasprintf(char **, const char *, va_list); 124 extern int asprintf(char **, const char *, ...) 125 PRINTF_ATTRIBUTE(2, 3); 126 extern int vsnprintf(char *, size_t, const char *, va_list); 127 128 extern int printf_size(const char *, ...) 129 PRINTF_ATTRIBUTE(1, 2); 130 extern int vprintf_size(const char *, va_list); 131 132 /* File stream functions */ 133 extern FILE *fopen(const char *, const char *); 134 extern FILE *fdopen(int, const char *); 135 extern FILE *freopen(const char *, const char *, FILE *); 136 extern int fclose(FILE *); 137 138 extern size_t fread(void *, size_t, size_t, FILE *); 139 extern size_t fwrite(const void *, size_t, size_t, FILE *); 140 141 extern int fseek(FILE *, long, int); 142 extern void rewind(FILE *); 143 extern long ftell(FILE *); 144 extern int feof(FILE *); 145 extern int fileno(FILE *); 146 147 extern int fflush(FILE *); 148 extern int ferror(FILE *); 149 extern void clearerr(FILE *); 150 151 extern void setvbuf(FILE *, void *, int, size_t); 152 extern void setbuf(FILE *, void *); 153 154 /* Misc file functions */ 155 extern int rename(const char *, const char *); 156 extern int remove(const char *); 167 157 168 158 #endif
Note:
See TracChangeset
for help on using the changeset viewer.