RPG (by default) passes parameters by reference. C (by default) passes parameters by value. To pass a parameter by reference from C, you put a pointer on the prototype, and you pass the address of a variable to that pointer.

RPG's *OMIT is equivalent to passing a NULL pointer.

So, from C, you simply pass NULL instead of a variable.  For example:


prototype:

void procname(char *param1, char *param2, char *param3, char *param4);

code:

   char val1[50], val2[50], val3[30], val4[50];

// set the "val" variables to useful values here

   procname( val1, NULL, val3, val4);

   - or -

   procname( NULL, val2, val3, val4);


etc, etc.


This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2019 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available here. If you have questions about this, please contact [javascript protected email address].