ferror(3)

ferror3

Check and reset stream status

Usage

#include <stdio.h>

void

clearerr(FILE *stream);

void

clearerr_unlocked(FILE *stream);

int

feof(FILE *stream);

int

feof_unlocked(FILE *stream);

int

ferror(FILE *stream);

int

ferror_unlocked(FILE *stream);

int

fileno(FILE *stream);

int

fileno_unlocked(FILE *stream);

Library

Standard C Library (libc, -lc)

Overview

The function clearerr() clears the end-of-file and error indicators for the stream pointed to by stream.

The function feof() tests the end-of-file indicator for the stream pointed to by stream, returning non-zero if it is set. The end-of-file indicator may be cleared by explicitly calling clearerr(), or as a side-effect of other operations, e.g. fseek().

The function ferror() tests the error indicator for the stream pointed to by stream, returning non-zero if it is set.

The function fileno() examines the argument stream and returns its integer descriptor.

The clearerr_unlocked(), feof_unlocked(), ferror_unlocked(), and fileno_unlocked() functions are equivalent to clearerr(), feof(), ferror(), and fileno() respectively, except that the caller is responsible for locking the stream with flockfile(3) before calling them. These functions may be used to avoid the overhead of locking the stream and to prevent races when multiple threads are operating on the same stream.

Errors

These functions should not fail and do not set the external variable errno.

Releases

163 releases since Mac OS X 10.0; the text changed 3 times.

  1. 10.0–10.1.5
  2. 10.2–10.2.8
  3. 10.3–10.6.8
  4. 10.7–26.5

Standards

The functions clearerr(), feof(), and ferror() conform to ISO/IEC 9899:1990 (“ISO C90”).

From Libc 1752.120.2 in macOS 26.5. Parsed by carta from the page's mdoc source.