Format
#include <recio.h> int _Rpgmdev(_RFILE *fp, char *dev);
Language Level: ILE C Extension
Threadsafe: No.
Description
The _Rpgmdev() function sets the current program device for the file that is associated with fp to dev. You must specify the device in uppercase.
The dev parameter is a null-ended C string.
The _Rpgmdev() function is valid for display, ICF, and printer files.
Return Value
The _Rpgmdev() function returns 1 if the operation is successful or zero if the device specified has not been acquired for the file. See Table 12 and Table 14 for errno settings.
Example that uses _Rpgmdev()
#include <stdio.h> #include <recio.h> #include <string.h> #include <stdlib.h> typedef struct { char name[20]; char address[25]; } format1 ; typedef struct { char name[8]; char password[10]; } format2 ; typedef union { format1 fmt1; format2 fmt2; } formats ; int main(void) { _RFILE *fp; /* File pointer */ _RIOFB_T *rfb; /*Pointer to the file's feedback structure */ formats buf, in_buf, out_buf; /* Buffers to hold data */ /* Open the device file. */ if (( fp = _Ropen ( "MYLIB/T1677RD2", "ar+" )) == NULL ) { printf ( "Could not open file\n" ); exit ( 1 ); } _Rpgmdev ( fp,"DEVICE2" );/* Change the default program device. */ /* Replace with actual device name. */ _Rformat ( fp,"FORMAT2" ); /* Set the record format for the */ /* display file. */ rfb = _Rwrite ( fp, "", 0 ); /* Set up the display. */ rfb = _Rwriterd ( fp, &buf, sizeof(buf) ); rfb = _Rwrread ( fp, &in_buf, sizeof(in_buf), &out_buf, sizeof(out_buf )); /* Continue processing. */ _Rclose ( fp ); }
Related Information
(C) Copyright IBM Corporation 1992, 2006. All Rights Reserved.