Re: Converting packed decimal to a char array

Barbara Morris <[email protected]>
Newsgroups gmane.comp.lang.as400.c
Message-ID <[email protected]>
On 2015-03-16 12:46, Barbara Morris wrote:

Oops, it should just be fulldec, not s.fulldec. (I had put fulldec into 
a struct with a char following so I could easily check for storage 
overrun in the debugger.)

  void printdec(void *A, int Len, int Prec)
  {
    decimal(63,0) fulldec;
    int offset;
    int bytes = (Len / 2) + 1;
     // Move packed number to a 63,0 variable.
     offset=32 - bytes;
     fulldec=0;
     memcpy(((char *) &fulldec)+offset, A, bytes);
     // Now print it.
     printf("%D(63,*)\n", Prec, fulldec) ;
  }


-- 
Barbara

-- 
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.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.