RexxStart - Example

The following is an example of a sample call to the REXX interpreter:
Sample call to the REXX interpreter

LONG      return_code;                 /* interpreter return code    */
RXSTRING  argv[1];                     /* program argument string    */
RXSTRING  retstr;                      /* program return value       */
SHORT     rc;                          /* converted return code      */
CHAR      return_buffer[250];          /* returned buffer            */
                                       /* build the argument string  */
  MAKERXSTRING(argv[0], macro_argument,
      strlen(macro_argument));
                                       /* set up default return      */
  MAKERXSTRING(retstr, return_buffer, sizeof(return_buffer));
  return_code = RexxStart(1,           /* one argument               */
                          argv,        /* argument array             */
                          "CHANGE.ED", /* REXX procedure name        */
                          NULL,        /* use disk version           */
                          "Editor",    /* default address name       */
                          RXCOMMAND,   /* calling as a subcommand    */
                          NULL,        /* no exits used              */
                          &rc,         /* converted return code      */
                          &retstr);    /* returned result            */
                                       /* process return value       */
.
.
.
                                       /* need to return storage?    */
  if (RXSTRPTR(retval) != return_buffer)
    DosFreeMem(RXSTRPTR(retval));      /* release the RXSTRING       */


[Back: RexxStart - Returns]
[Next: Subcommand Interface]