X04 Chapter Contents
X04 Chapter Introduction
NAG Library Manual

# NAG Library Routine DocumentX04ACF

Note:  before using this routine, please read the Users' Note for your implementation to check the interpretation of bold italicised terms and other implementation-dependent details.

## 1  Purpose

X04ACF opens a Fortran unit number for reading, writing or appending, and associates the unit with a named file.

## 2  Specification

 SUBROUTINE X04ACF ( IOUNIT, FILE, MODE, IFAIL)
 INTEGER IOUNIT, MODE, IFAIL CHARACTER(*) FILE

## 3  Description

X04ACF is especially useful if the calling language is not Fortran. It opens a Fortran unit number for reading, writing or appending, and associates the unit with a filename specified by the parameter FILE.

None.

## 5  Parameters

1:     IOUNIT – INTEGERInput
On entry: the Fortran unit number which identifies the file to be read from, written to or appended to. Note that this may be system dependent. Values in the range $7$ to $1000$ should however be safe on most systems.
2:     FILE – CHARACTER(*)Input
On entry: the name of the file to be opened.
Constraint: must contain a valid filename for the computer system being used.
3:     MODE – INTEGERInput
On entry: specifies whether the file is to be opened for reading, writing or appending.
${\mathbf{MODE}}=0$
The file is to be opened for reading.
${\mathbf{MODE}}=1$
The file is to be opened for writing.
${\mathbf{MODE}}=2$
The file is to be opened for appending.
Constraint: $0\le {\mathbf{MODE}}\le 2$.
4:     IFAIL – INTEGERInput/Output
On entry: IFAIL must be set to $0$, $-1\text{​ or ​}1$. If you are unfamiliar with this parameter you should refer to Section 3.3 in the Essential Introduction for details.
For environments where it might be inappropriate to halt program execution when an error is detected, the value $-1\text{​ or ​}1$ is recommended. If the output of error messages is undesirable, then the value $1$ is recommended. Otherwise, if you are not familiar with this parameter, the recommended value is $0$. When the value $-\mathbf{1}\text{​ or ​}\mathbf{1}$ is used it is essential to test the value of IFAIL on exit.
On exit: ${\mathbf{IFAIL}}={\mathbf{0}}$ unless the routine detects an error or a warning has been flagged (see Section 6).

## 6  Error Indicators and Warnings

If on entry ${\mathbf{IFAIL}}={\mathbf{0}}$ or $-{\mathbf{1}}$, explanatory error messages are output on the current error message unit (as defined by X04AAF).
Errors or warnings detected by the routine:
${\mathbf{IFAIL}}=1$
On entry, MODE is invalid.
${\mathbf{IFAIL}}=2$
Failure to open the file for reading.
${\mathbf{IFAIL}}=3$
Failure to open the file for writing.
${\mathbf{IFAIL}}=4$
Failure to open the file for appending.

Not applicable.

None.

## 9  Example

This example illustrates how to open a file for writing.

### 9.1  Program Text

Program Text (x04acfe.f90)

None.

### 9.3  Program Results

Program Results (x04acfe.r)