Memory Allocation To a Structure

ronan_40060's Avatar
Go4Expert Member
Dear Experts
I have the following Structure
Code:
typedef struct wf_list_workunit_fe  
                {
                                short int nbr_Workunits_fe;
                                [size_is(nbr_Workunits_fe)] WF_STRUCT_WORKUNIT_FE  lst_Workunit_fe[*];
                } WF_LIST_WORKUNIT_FE;
and 
typedef [ptr] WF_LIST_WORKUNIT_FE * WF_LIST_WORKUNIT_P_FE;
and Now Im doing this 
WF_LIST_WORKUNIT_FE listWU;
memset((void*)&listWU, '\0' , sizeof(WF_LIST_WORKUNIT_FE));
WF_LIST_WORKUNIT_P_FE ptrlistWU ;
ptrlistWU = &listWU;
Is this correct ?

Last edited by shabbir; 7Feb2009 at 18:51.. Reason: Code blocks
shabbir's Avatar, Join Date: Jul 2004
Go4Expert Founder
There are 2 ways to say if its correct or not.

1. Syntactically
2. Semantically

For testing point 1 you should allow the compiler to say if its compiling.

For Semantically correction we need to know what you are trying to do as well.
ronan_40060's Avatar
Go4Expert Member
Hi Shabbir
Thanks for the reply ..
WF_LIST_WORKUNIT_FE array of structure is sent as an OUT param in one of the RPC..
Im allocating a memory for it to store all the member varibles of WF_LIST_WORKUNIT_FE in local variables

for (int i = 0; i < ptrlistWU->nbr_Workunits_fe; i++)
{
retObj->workunitArray->lstWorkunit->wfStructWu.push_back(conObj.WFWuStructDceToSoap(p trlistWU->lst_Workunit_fe[i]));
}
where lstWorkunit is the local object and I have ptrlistWU->lst_Workunit_fe[i]) that is passed to WFWuStructDceToSoap method ...