Originally Posted by itsme86
Not quite.
The stdio functions have to call the low-level read() and write() to actually read data from the disk or write data to the disk. The stdio library has an internal buffer of a limited size. The syscalls read() and write() are slow relative to the stdio functions fread(), fwrite(), fgets(), fputs(), etc. So when you use one of those stdio functions to write to a file it just adds it to the buffer. When the buffer fills up it write()s it to disk and the process continues. This minimizes the number of write() calls the program needs to make.
So if you try writing a huge amount of data using the stdio functions you won't tax the memory. You'll just keep filling the buffer and the write() will keep getting called.