root / lab4 / .minix-src / include / c++ / cstdio @ 13
History | View | Annotate | Download (5.48 KB)
1 |
// -*- C++ -*- |
---|---|
2 |
//===---------------------------- cstdio ----------------------------------===// |
3 |
// |
4 |
// The LLVM Compiler Infrastructure |
5 |
// |
6 |
// This file is dual licensed under the MIT and the University of Illinois Open |
7 |
// Source Licenses. See LICENSE.TXT for details. |
8 |
// |
9 |
//===----------------------------------------------------------------------===// |
10 |
|
11 |
#ifndef _LIBCPP_CSTDIO |
12 |
#define _LIBCPP_CSTDIO |
13 |
|
14 |
/* |
15 |
cstdio synopsis |
16 |
|
17 |
Macros: |
18 |
|
19 |
BUFSIZ |
20 |
EOF |
21 |
FILENAME_MAX |
22 |
FOPEN_MAX |
23 |
L_tmpnam |
24 |
NULL |
25 |
SEEK_CUR |
26 |
SEEK_END |
27 |
SEEK_SET |
28 |
TMP_MAX |
29 |
_IOFBF |
30 |
_IOLBF |
31 |
_IONBF |
32 |
stderr |
33 |
stdin |
34 |
stdout |
35 |
|
36 |
namespace std |
37 |
{ |
38 |
|
39 |
Types: |
40 |
|
41 |
FILE |
42 |
fpos_t |
43 |
size_t |
44 |
|
45 |
int remove(const char* filename); |
46 |
int rename(const char* old, const char* new); |
47 |
FILE* tmpfile(void); |
48 |
char* tmpnam(char* s); |
49 |
int fclose(FILE* stream); |
50 |
int fflush(FILE* stream); |
51 |
FILE* fopen(const char* restrict filename, const char* restrict mode); |
52 |
FILE* freopen(const char* restrict filename, const char * restrict mode, |
53 |
FILE * restrict stream); |
54 |
void setbuf(FILE* restrict stream, char* restrict buf); |
55 |
int setvbuf(FILE* restrict stream, char* restrict buf, int mode, size_t size); |
56 |
int fprintf(FILE* restrict stream, const char* restrict format, ...); |
57 |
int fscanf(FILE* restrict stream, const char * restrict format, ...); |
58 |
int printf(const char* restrict format, ...); |
59 |
int scanf(const char* restrict format, ...); |
60 |
int snprintf(char* restrict s, size_t n, const char* restrict format, ...); // C99 |
61 |
int sprintf(char* restrict s, const char* restrict format, ...); |
62 |
int sscanf(const char* restrict s, const char* restrict format, ...); |
63 |
int vfprintf(FILE* restrict stream, const char* restrict format, va_list arg); |
64 |
int vfscanf(FILE* restrict stream, const char* restrict format, va_list arg); // C99 |
65 |
int vprintf(const char* restrict format, va_list arg); |
66 |
int vscanf(const char* restrict format, va_list arg); // C99 |
67 |
int vsnprintf(char* restrict s, size_t n, const char* restrict format, // C99 |
68 |
va_list arg); |
69 |
int vsprintf(char* restrict s, const char* restrict format, va_list arg); |
70 |
int vsscanf(const char* restrict s, const char* restrict format, va_list arg); // C99 |
71 |
int fgetc(FILE* stream); |
72 |
char* fgets(char* restrict s, int n, FILE* restrict stream); |
73 |
int fputc(int c, FILE* stream); |
74 |
int fputs(const char* restrict s, FILE* restrict stream); |
75 |
int getc(FILE* stream); |
76 |
int getchar(void); |
77 |
char* gets(char* s); // removed in C++14 |
78 |
int putc(int c, FILE* stream); |
79 |
int putchar(int c); |
80 |
int puts(const char* s); |
81 |
int ungetc(int c, FILE* stream); |
82 |
size_t fread(void* restrict ptr, size_t size, size_t nmemb, |
83 |
FILE* restrict stream); |
84 |
size_t fwrite(const void* restrict ptr, size_t size, size_t nmemb, |
85 |
FILE* restrict stream); |
86 |
int fgetpos(FILE* restrict stream, fpos_t* restrict pos); |
87 |
int fseek(FILE* stream, long offset, int whence); |
88 |
int fsetpos(FILE*stream, const fpos_t* pos); |
89 |
long ftell(FILE* stream); |
90 |
void rewind(FILE* stream); |
91 |
void clearerr(FILE* stream); |
92 |
int feof(FILE* stream); |
93 |
int ferror(FILE* stream); |
94 |
void perror(const char* s); |
95 |
|
96 |
} // std |
97 |
*/ |
98 |
|
99 |
#include <__config> |
100 |
#include <stdio.h> |
101 |
|
102 |
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) |
103 |
#pragma GCC system_header |
104 |
#endif |
105 |
|
106 |
// snprintf |
107 |
#if defined(_LIBCPP_MSVCRT) |
108 |
#include "support/win32/support.h" |
109 |
#endif |
110 |
|
111 |
#ifdef getc |
112 |
inline _LIBCPP_INLINE_VISIBILITY int __libcpp_getc(FILE* __stream) {return getc(__stream);} |
113 |
#undef getc |
114 |
inline _LIBCPP_INLINE_VISIBILITY int getc(FILE* __stream) {return __libcpp_getc(__stream);} |
115 |
#endif // getc |
116 |
|
117 |
#ifdef putc |
118 |
inline _LIBCPP_INLINE_VISIBILITY int __libcpp_putc(int __c, FILE* __stream) {return putc(__c, __stream);} |
119 |
#undef putc |
120 |
inline _LIBCPP_INLINE_VISIBILITY int putc(int __c, FILE* __stream) {return __libcpp_putc(__c, __stream);} |
121 |
#endif // putc |
122 |
|
123 |
#ifdef clearerr |
124 |
inline _LIBCPP_INLINE_VISIBILITY void __libcpp_clearerr(FILE* __stream) { return clearerr(__stream); } |
125 |
#undef clearerr |
126 |
inline _LIBCPP_INLINE_VISIBILITY void clearerr(FILE* __stream) { return __libcpp_clearerr(__stream); } |
127 |
#endif // clearerr |
128 |
|
129 |
#ifdef feof |
130 |
inline _LIBCPP_INLINE_VISIBILITY int __libcpp_feof(FILE* __stream) { return feof(__stream); } |
131 |
#undef feof |
132 |
inline _LIBCPP_INLINE_VISIBILITY int feof(FILE* __stream) { return __libcpp_feof(__stream); } |
133 |
#endif // feof |
134 |
|
135 |
#ifdef ferror |
136 |
inline _LIBCPP_INLINE_VISIBILITY int __libcpp_ferror(FILE* __stream) { return ferror(__stream); } |
137 |
#undef ferror |
138 |
inline _LIBCPP_INLINE_VISIBILITY int ferror(FILE* __stream) { return __libcpp_ferror(__stream); } |
139 |
#endif // ferror |
140 |
|
141 |
_LIBCPP_BEGIN_NAMESPACE_STD |
142 |
|
143 |
using ::FILE; |
144 |
using ::fpos_t; |
145 |
using ::size_t; |
146 |
|
147 |
using ::fclose; |
148 |
using ::fflush; |
149 |
using ::setbuf; |
150 |
using ::setvbuf; |
151 |
using ::fprintf; |
152 |
using ::fscanf; |
153 |
using ::snprintf; |
154 |
using ::sprintf; |
155 |
using ::sscanf; |
156 |
#ifndef _LIBCPP_MSVCRT |
157 |
using ::vfprintf; |
158 |
using ::vfscanf; |
159 |
using ::vsscanf; |
160 |
#endif // _LIBCPP_MSVCRT |
161 |
using ::vsnprintf; |
162 |
using ::vsprintf; |
163 |
using ::fgetc; |
164 |
using ::fgets; |
165 |
using ::fputc; |
166 |
using ::fputs; |
167 |
using ::getc; |
168 |
using ::putc; |
169 |
using ::ungetc; |
170 |
using ::fread; |
171 |
using ::fwrite; |
172 |
using ::fgetpos; |
173 |
using ::fseek; |
174 |
using ::fsetpos; |
175 |
using ::ftell; |
176 |
using ::rewind; |
177 |
using ::clearerr; |
178 |
using ::feof; |
179 |
using ::ferror; |
180 |
using ::perror; |
181 |
|
182 |
#ifndef _LIBCPP_HAS_NO_GLOBAL_FILESYSTEM_NAMESPACE |
183 |
using ::fopen; |
184 |
using ::freopen; |
185 |
using ::remove; |
186 |
using ::rename; |
187 |
using ::tmpfile; |
188 |
using ::tmpnam; |
189 |
#endif |
190 |
|
191 |
#ifndef _LIBCPP_HAS_NO_STDIN |
192 |
using ::getchar; |
193 |
#if _LIBCPP_STD_VER <= 11 |
194 |
using ::gets; |
195 |
#endif |
196 |
using ::scanf; |
197 |
using ::vscanf; |
198 |
#endif |
199 |
|
200 |
#ifndef _LIBCPP_HAS_NO_STDOUT |
201 |
using ::printf; |
202 |
using ::putchar; |
203 |
using ::puts; |
204 |
using ::vprintf; |
205 |
#endif |
206 |
|
207 |
_LIBCPP_END_NAMESPACE_STD |
208 |
|
209 |
#endif // _LIBCPP_CSTDIO |