Каждый процесс традиционно имеет не менее трех открытых файловых дескрипторов: 0, 1 и 2, если, конечно, процесс явно не закрывает один из них. Файловый дескриптор 0 соответствует стандартному вводу (stdin), дескриптор 1 — стандартному выводу (stdout), дескриптор 2 — стандартной ошибке (stderr). Библиотека С не ссылается непосредственно на эти целые числа, а предоставляет препроцессорные определения STDIN_FILENO, STDOUT_FILENO и STDERR_FILENO для каждого из вышеописанных вариантов соответственно.