Stdio The standard I/O library simplifies the use of files fopen(3), fclose(3), fread(3), fwrite(3), fseek(3), ... popen(3) calls an external command fdopen(3) promotes an fd into a file pointer fscanf(3), fprintf(3), fgets(3), puts(3) Obviously, stdio has disadvantages too: select(2) and poll(2) will just not work non-blocking files are a real pain scanf(3) can block unexpectedly