5.1 Overview
Programs of all sorts regularly perform input/output (I/O) operations , and programmers soon learn the pitfalls of these operations: trying to open a nonexistent file, having too many files open at the same time, accidentally overwriting a file and thereby losing its data, and so on. Nonetheless, I/O operations remain at the core of programming.
C has two APIs for I/O operations: a low-level or system-level API, which is byte-oriented, and a high-level API, which deals with multibyte data types such as integers, floating-point ...