On Sat, 2 Oct 2004, Simon Coulter wrote:

decimal(15,0) * rrn = (decimal(15,0)*)argv[2];
*rrn = riofb_fwd->rrn;

will do it. If you don't do it this way you'll have to do something ugly like passing character values or convert to decimal in the C (by assigning to an appropriate decimal variable) and copy the correct number of bytes into your caller's storage. Doesn't C suck?

No, C doesn't suck. But it does seem like you guys are going through a lot of gyrations to do something very simple: get a return value from a C program. All you want is a number, so return one:


  int rrn;

  return (rrn);

Done. Easy. Every C function can return a value, including main(). All you need to know is, "What is the value of the last executed command?" The shell can find that out for you very simply.

James Rich

It's not the software that's free; it's you.
        - billyskank on Groklaw

This thread ...

Follow-Ups:
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].