¿Por qué una salida no puede ser seguida por una entrada y viceversa?
De APUE
Cuando se abre un archivo para leer y escribir (el signo más en el tipo), se aplican dos restricciones.
• La salida no puede ser seguida directamente por la entrada sin un flujo intermedio, fseek, fsetpos o rebobinado.
• La entrada no puede ser seguida directamente por la salida sin un fseek, fsetpos o rebobinado intermedio, o una operación de entrada que encuentra un final de archivo.
¿Por qué "fseek, fsetpos o rewind" en ambos casos?
¿Por qué "una operación de entrada que encuentra un final de archivo" en el segundo caso?
Gracias
Una pregunta similar para la API de Linux es ¿Puede `leer ()` ir directamente seguido de `escribir ()` y `escribir ()` por `leer ()`?