ENVREAL() is a Fortran wrapper calling the C envrealc()
REAL FUNCTION ENVREAL( LNAME, DESCRIP, DEFAULT, STATUS )
CHARACTER*(*) LNAME ! logical name to evaluate
CHARACTER*(*) DESCRIP ! description of the value
REAL DEFAULT ! default value (if LNAME not set, or empty)
INTEGER STATUS ! for error/default-case detection
float envrealc( const char * lname ,
const char * description ,
float defaultval ,
int * status )
See also
ENVDBLE,
ENVINT,
ENVSTR,
ENVYN,
NAMEVAL, and
SETENV.
#include "iodecl3.h" if called from C.
LNAME and DESCRIP have length at most 256. (NOTE: POSIX says that environment variables may have lengths this long.)
... setenv FOOFLAG True ... /mydirectory/myprogram ...
...
INTEGER FOO
INTEGER STATUS
...
FOO = ENVREAL( 'FOO',
& 'Some control parameter or other, called FOO',
& 17.0 ,
& STATUS )
IF ( STATUS .GT. 0 ) THEN
... bad value for FOO; do something.
END IF
...
#include "iodecl3.h"
...
int status ;
double value ;
...
value = envrealc( "FOO",
"Here is where I put a description",
17.0 ,
& status ) )
if ( status > 0 )
{
... stuff for bad (non-integer) value of environment variable FOO
}
else if ( status == -1 )
{
... stuff for empty-but-defined FOO
}
else if ( status == -2 )
{
... stuff for not-defined-at-all FOO
}
...
use value...
To: Models-3/EDSS I/O API: The Help Pages