In fact, stdout _is_ a file. But not a file in your normal file system on the hard disk, but one in the virtual file system. So its no wonder that you can write into the console like into a file.
Shitlord by trade and passion. Graphics programmer at Laminar Research. I write blog posts at feresignum.com