Spec-Zone.ru › C

Заголовок стандартной библиотеки <stdio.h>

Этот заголовок является частью библиотеки ввода/вывода, предоставляющей поддержку общих файловых операций и функции ввода-вывода для работы с узкими символами.

Типы

FILE
тип объекта, способного хранить всю информацию, необходимую для управления потоком ввода-вывода C
(определение типа)
fpos_t
завершённый тип объекта, не являющийся массивом, способный однозначно задавать позицию и состояние анализатора многобайтовых символов в файле
(определение типа)

Предопределённые стандартные потоки

stdinstdoutstderr
выражение типа FILE*, связанное с потоком ввода
выражение типа FILE*, связанное с потоком вывода
выражение типа FILE*, связанное с потоком вывода ошибок
(макроконстанта)

Функции

Доступ к файлам
fopenfopen_s
(C11)
открывает файл
(функция)
freopenfreopen_s
(C11)
открывает существующий поток под другим именем
(функция)
fclose
закрывает файл
(функция)
fflush
синхронизирует выходной поток с фактическим файлом
(функция)
setbuf
задаёт буфер для файлового потока
(функция)
setvbuf
задаёт буфер и его размер для файлового потока
(функция)
Прямой ввод/вывод
fread
читает данные из файла
(функция)
fwrite
записывает данные в файл
(функция)
Неформатированный ввод/вывод
Узкие символы
fgetcgetc
получает символ из файлового потока
(функция)
fgets
получает строку символов из файлового потока
(функция)
fputcputc
записывает символ в файловый поток
(функция)
fputs
записывает строку символов в файловый поток
(функция)
getchar
читает символ из stdin
(функция)
getsgets_s
(удалена в C11)(C11)
читает строку символов из stdin
(функция)
putchar
записывает символ в stdout
(функция)
puts
записывает строку символов в stdout
(функция)
ungetc
возвращает символ в файловый поток
(функция)
Форматированный ввод/вывод
Узкие символы
scanffscanfsscanfscanf_sfscanf_ssscanf_s
(C11)(C11)(C11)
считывает форматированные данные из stdin, файлового потока или буфера
(функция)
vscanfvfscanfvsscanfvscanf_svfscanf_svsscanf_s
(C99)(C99)(C99)(C11)(C11)(C11)
считывает форматированные данные из stdin, файлового потока или буфера
с использованием списка аргументов переменной длины
(функция)
printffprintfsprintfsnprintfprintf_sfprintf_ssprintf_ssnprintf_s
(C99)(C11)(C11)(C11)(C11)
выводит форматированные данные в stdout, файловый поток или буфер
(функция)
vprintfvfprintfvsprintfvsnprintfvprintf_svfprintf_svsprintf_svsnprintf_s
(C99)(C11)(C11)(C11)(C11)
выводит форматированные данные в stdout, файловый поток или буфер
с использованием списка аргументов переменной длины
(функция)
Позиционирование в файле
ftell
возвращает текущий указатель позиции в файле
(функция)
fgetpos
получает указатель позиции в файле
(функция)
fseek
перемещает указатель позиции в файле в заданное место файла
(функция)
fsetpos
перемещает указатель позиции в файле в заданное место файла
(функция)
rewind
перемещает указатель позиции в файле в начало файла
(функция)
Обработка ошибок
clearerr
сбрасывает ошибки
(функция)
feof
проверяет достижение конца файла
(функция)
ferror
проверяет наличие ошибки файла
(функция)
perror
выводит в stderr строку символов, соответствующую текущей ошибке
(функция)
Операции с файлами
remove
удаляет файл
(функция)
rename
переименовывает файл
(функция)
tmpfiletmpfile_s
(C11)
возвращает указатель на временный файл
(функция)
tmpnamtmpnam_s
(C11)
возвращает уникальное имя файла
(функция)

Макроконстанты

EOF
целочисленное константное выражение типа int с отрицательным значением
(макроконстанта)
FOPEN_MAX
максимальное количество файлов, которые могут быть открыты одновременно
(макроконстанта)
FILENAME_MAX
размер массива типа char, необходимого для хранения самого длинного поддерживаемого имени файла
(макроконстанта)
_PRINTF_NAN_LEN_MAX
(C23)
максимальное количество символов, выводимых для любого значения NaN (возможно, с отрицательным знаком)
(макроконстанта)
BUFSIZ
размер буфера, используемого setbuf
(макроконстанта)
_IOFBF_IOLBF_IONBF
задаёт режим буферизации (полная буферизация / построчная буферизация / без буферизации) для setvbuf
(макроконстанта)
SEEK_SETSEEK_CURSEEK_END
задаёт начальную точку смещения (начало / текущая позиция / конец), используемую fseek
(макроконстанта)
TMP_MAXTMP_MAX_S
(C11)
максимальное количество уникальных имён файлов, которые могут быть созданы с помощью tmpnam / tmpnam_s
(макроконстанта)
L_tmpnamL_tmpnam_s
(C11)
размер массива типа char, необходимого для хранения результата tmpnam / tmpnam_s
(макроконстанта)

Обзор

#define __STDC_VERSION_STDIO_H__ 202311L

typedef /* see description */ FILE;
typedef /* see description */ size_t;
typedef /* see description */ FILE;
typedef /* see description */ fpos_t;

#define NULL         /* see description */
#define _IOFBF       /* see description */
#define _IOLBF       /* see description */
#define _IONBF       /* see description */
#define BUFSIZ       /* see description */
#define EOF          /* see description */
#define FOPEN_MAX    /* see description */
#define FILENAME_MAX /* see description */
#define L_tmpnam     /* see description */
#define SEEK_CUR     /* see description */
#define SEEK_END     /* see description */
#define SEEK_SET     /* see description */
#define TMP_MAX      /* see description */

#define stdin        /* see description */
#define stdout       /* see description */
#define stderr       /* see description */

#define _PRINTF_NAN_LEN_MAX /* see description */

int remove(const char* filename);
int rename(const char* old, const char* new);
FILE* tmpfile(void);
char* tmpnam(char* s);
int fclose(FILE* stream);
int fflush(FILE* stream);
FILE* fopen(const char* restrict filename, const char* restrict mode);
FILE* freopen(const char* restrict filename, const char* restrict mode,
FILE* restrict stream);
void setbuf(FILE* restrict stream, char* restrict buf);
int setvbuf(FILE* restrict stream, char* restrict buf, int mode, size_t size);
int printf(const char* restrict format, ...);
int scanf(const char* restrict format, ...);
int snprintf(char* restrict s, size_t n, const char* restrict format, ...);
int sprintf(char* restrict s, const char* restrict format, ...);
int sscanf(const char* restrict s, const char* restrict format, ...);
int vfprintf(FILE* restrict stream, const char* restrict format, va_list arg);
int vfscanf(FILE* restrict stream, const char* restrict format, va_list arg);
int vprintf(const char* restrict format, va_list arg);
int vscanf(const char* restrict format, va_list arg);
int vsnprintf(char* restrict s, size_t n, const char* restrict format, va_list arg);
int vsprintf(char* restrict s, const char* restrict format, va_list arg);
int vsscanf(const char* restrict s, const char* restrict format, va_list arg);
int fgetc(FILE* stream);
char* fgets(char* restrict s, int n, FILE* restrict stream);
int fputc(int c, FILE* stream);
int fputs(const char* restrict s, FILE* restrict stream);
int getc(FILE* stream);
int getchar(void);
int putc(int c, FILE* stream);
int putchar(int c);
int puts(const char* s);
int ungetc(int c, FILE* stream);
size_t fread(void* restrict ptr, size_t size, size_t nmemb,
FILE* restrict stream);
size_t fwrite(const void* restrict ptr, size_t size, size_t nmemb,
FILE* restrict stream);
int fgetpos(FILE* restrict stream, fpos_t* restrict pos);
int fseek(FILE* stream, long int offset, int whence);
int fsetpos(FILE* stream, const fpos_t* pos);
long int ftell(FILE* stream);
void rewind(FILE* stream);
void clearerr(FILE* stream);
int feof(FILE* stream);
int ferror(FILE* stream);
void perror(const char* s);
int fprintf(FILE* restrict stream, const char* restrict format, ...);
int fscanf(FILE* restrict stream, const char* restrict format, ...);

Только если реализация определяет __STDC_LIB_EXT1__ и дополнительно пользовательский код определяет __STDC_WANT_LIB_EXT1__ до любого включения <stdio.h>:

#if defined(__STDC_WANT_LIB_EXT1__)

#define L_tmpnam_s /* see description */
#define TMP_MAX_S  /* see description */

typedef /* see description */ errno_t;
typedef /* see description */ rsize_t;

errno_t tmpfile_s(FILE* restrict* restrict streamptr);
errno_t tmpnam_s(char* s, rsize_t maxsize);
errno_t fopen_s(FILE* restrict* restrict streamptr,
const char* restrict filename, const char* restrict mode);
errno_t freopen_s(FILE* restrict* restrict newstreamptr,
const char* restrict filename, const char* restrict mode,
FILE* restrict stream);
int fprintf_s(FILE* restrict stream, const char* restrict format, ...);
int fscanf_s(FILE* restrict stream, const char* restrict format, ...);
int printf_s(const char* restrict format, ...);
int scanf_s(const char* restrict format, ...);
int snprintf_s(char* restrict s, rsize_t n, const char* restrict format, ...);
int sprintf_s(char* restrict s, rsize_t n, const char* restrict format, ...);
int sscanf_s(const char* restrict s, const char* restrict format, ...);
int vfprintf_s(FILE* restrict stream, const char* restrict format, va_list arg);
int vfscanf_s(FILE* restrict stream, const char* restrict format, va_list arg);
int vprintf_s(const char* restrict format, va_list arg);
int vscanf_s(const char* restrict format, va_list arg);
int vsnprintf_s(char* restrict s, rsize_t n, const char* restrict format, va_list arg);
int vsprintf_s(char* restrict s, rsize_t n, const char* restrict format, va_list arg);
int vsscanf_s(const char* restrict s, const char* restrict format, va_list arg);
char* gets_s(char* s, rsize_t n);
#endif

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/c/header/stdio

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API