× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.

I have a module with some number conversion routines in it.  I bind this 
module to a program.  The procedures or function returns a status value 
signifing success(0), or overflow (3).  If I create a SIGNAL error handler 
and it gets invoked from one of the functions, am I able to set the return 

For example:

0184.00 /* QXXBTOZ - Convert binary to zoned.   */
0186.00 int QXXBTOZ(unsigned char *znd, int zlen,  
0187.00              unsigned char *bin, int blen, int hassign)           

The above function returns 0 if successful, or 3 for overflow.  Is there a 
way to set the return value to 3 if the SIGNAL error get involked.  OR, 
should I be using  catch, try exception handling?

Thanks in advance for any help you can provide.


Barbara Morris <bmorris@xxxxxxxxxx> 
Sent by: c400-l-bounces@xxxxxxxxxxxx
07/14/2003 07:11 PM
Please respond to
C programming iSeries / AS400 <c400-l@xxxxxxxxxxxx>


[C400-L] Re: Trap for errors

Bobby.Hicks@xxxxxxxxxxxxxxxx wrote:
> I am new to C, and I'm hoping that someone can help me.  How can I check
> for errors during procedure/program flow.  Basically I have a conversion
> routine to convert a binary field to either a packed or zoned field.   I
> want to ensure that an overflow problem or something similar does not 
> a hard error, instead I want to return an error code to the calling
> program.  Thanks for any help  you can provide me.
> Bobby.

Bobby, C's standard exception handling is through "signals", using
functions setjmp, signal and longjmp.

ILE C also has #pragma exception_handler.

You could also use ILE Condition Handlers - see functions CEEHDLR and

I personally find the #pragma exception_handler to be the easiest to
use, but if you want to learn something that's standard for C, learn
about signals.

This is the C programming iSeries / AS400 (C400-L) mailing list
To post a message email: C400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/c400-l
or email: C400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/c400-l.

As an Amazon Associate we earn from qualifying purchases.

This thread ...


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

This mailing list archive is Copyright 1997-2023 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 on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.