# Defined I/O Procedures

For a particular derived type and a particular set of kind-type parameter values, there are four possible sets of characteristics for defined I/O procedures: formatted input, formatted output, unformatted input, and unformatted output.

To specify that an I/O procedure should be used for derived-type I/O, specify one of the following with a defined-io-generic-spec:

- A generic binding

- An interface block

A defined-io-generic-spec is one of the following statements:

- READ (FORMATTED)

- READ (UNFORMATTED)

- WRITE (FORMATTED)

- WRITE (UNFORMATTED)

Parent topic: Associate a Procedure with Defined I/O