Stick the data in a user space and obtain a pointer to the space. You can then spin through the space as often as you like. Replace the data as you desire.

-----Original Message-----
From: C400-L [mailto:c400-l-bounces@xxxxxxxxxxxx] On Behalf Of Frank Kolmann
Sent: Wednesday, September 10, 2014 2:54 AM
To: c400-l
Subject: [C400-L] C program for QDFRTVFD API


I have coded a C program to get info from the QDFRTVFD API.

It works and successfully retrieves Fields (incl posn and atr) and Constants from a DSPF.

It is here.

However the way it is coded is very inefficient because I invoke the API for every field/constant in the DSPF.

To be more efficient I would need to invoke the API only once and retain the API returned data.

I want to keep the API invoke in the called function.

To retain data after a C program ends is , I believe the definition of ‘memory leak’, so I cant see how I can call the API within the C program and also retain the data after the program ends.

I know how to pass data back to the caller, in fact that is how the field information is returned. However for this I have memory allocated in the caller.
The C program does a ‘malloc’ and here is where I am lost, as I cannot see how to pass back the data in the ‘malloc’.

Any help. TIA.

This is the Bare Metal Programming IBM i (AS/400 and iSeries) (C400-L) mailing list To post a message email: C400-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change list options,
or email: C400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives at

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-2022 by 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.