Ähem, das steht nun aber wirklich drin:
``The standard streams stdin, stdout, and stderr are provided, but
contrary to the C standard, since avr-libc has no knowledge about
applicable devices, these streams are not already pre-initialized at
application startup. Also, since there's no notion of "file" whatsoever
to avr-libc, there's no function fopen() that could be used to associate
a stream to some device. (See note 1.) Instead, function fdevopen() is
provided to associate a stream to a device, where the device needs to
provide a function to send a character, to receive a character, or both.
There's no differentiation between "text" and "binary" streams inside
avr-libc. Character \n is sent literally down to the device's put()
function. If the device requires a carriage return (\r) character to be
sent before the linefeed, its put() routine must implement this (see
note 2).''