Re: First C program
Steve Richter <[email protected]>
| Newsgroups | gmane.comp.lang.as400.c |
|---|---|
| Message-ID | <CAE0XMrOpkHJMa_KTOpHSaPBYPgJBXpB07udRn+O7X4=0ceqNrQ@mail.gmail.com> |
I notice that C++ does not support the #pragma mapinc statement:
#pragma mapinc("ddhpf","*libl/REL(*ALL)","input"," ",,"")
#include "ddhpf"
I was going to suggest compiling as C++ and using classes to reduce the
complexity of the code. But the CRTCPPMOD command does not support #pragma
mapinc ?
"QGPL/QRPGLESRC(CSAMPLEC)", line 22.10: CZP0836(30) The #include file
"ddhpf" is not found.
-Steve
On Thu, Apr 3, 2014 at 6:39 AM, Frank Kolmann <[email protected]> wrote:
> Hi Jevgeni
>
>
>
> Thank you. You make good points.
>
> That is a good way of trapping the == issue.
>
> I will follow Barbaras advice in the coding of the if.
>
>
>
> I like the way you use the #define for the type defs.
>
> It does make the code clearer, I will use that sytle.
>
>
>
> Frank
>
>
>
>
>
> >*Subject: Re: First C program
>
> >*From: Jevgeni Astanovski <Jevgeni.Astanovski@xxxxxxxxxxxxx>
>
> >*Date: Wed, 2 Apr 2014 07:54:34 +0000
>
> >Yes. Barbara mentioned the define and I haven't...
>
> >Definitely there are lots of this sort of advises to avoid =/== possible
> mistake.
>
> >I've never saw the one you referred.
>
> > However some use another technique:
>
> >Instead of writing
>
> >if ((pf = _Ropen(PFILENAME, "rr")) == NULL)
>
> >they write
>
> >if (NULL == (pf = _Ropen(PFILENAME, "rr")))
>
> >In this case if you make a mistake and write
>
> >if (NULL = (pf = _Ropen(PFILENAME, "rr")))
>
> >you will immediately get a syntax error.
>
> >
>
> ....
>
> >
>
> >On the second issue - this is purely a question of how readable is your
> program.
>
> > My personal practice is to use "explicit" way of defining types. For
> example:
>
> >
>
> >#pragma mapinc("dspf", "*LIBL/Y80ALD(ADDCHRG)", "both", "_P", "Y80",
> "Y80")
>
> > #include "dspf"
>
> > #define INPUT_T Y80_ADDCHRG_i_t
>
> > #define OUTPUT_T Y80_ADDCHRG_o_t
>
> >
> >in this case it is (more) clear where these types are derived from....
> --
> This is the Bare Metal Programming IBM i (AS/400 and iSeries) (C400-L)
> mailing list
> To post a message email: C400-L-Zwy7GipZuJhWk0Htik3J/[email protected]
> To subscribe, unsubscribe, or change list options,
> visit: http://lists.midrange.com/mailman/listinfo/c400-l
> or email: C400-L-request-Zwy7GipZuJhWk0Htik3J/[email protected]
> Before posting, please take a moment to review the archives
> at http://archive.midrange.com/c400-l.
>
>
--
This is the Bare Metal Programming IBM i (AS/400 and iSeries) (C400-L) mailing list
To post a message email: C400-L-Zwy7GipZuJhWk0Htik3J/[email protected]
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/c400-l
or email: C400-L-request-Zwy7GipZuJhWk0Htik3J/[email protected]
Before posting, please take a moment to review the archives
at http://archive.midrange.com/c400-l.