[Malloc - Free] Comment bien les utiliser dans ce cas ?
Bonjour tout le monde,
Je suis actuellement en plein dilemne... :roll:
En effet, je ne sais comment liberer la memoire allouee sans perdre les infos...
J m explique, j'utilise une fonction qui me retourne un " pointeur sur un unsigned integer (uint_T*)" et j alloue de la memoire pour cela...
Ce que j aimerais faire c est desallouer cette memoire apres avoir recolte les bonnes informations...
Je vous presente un bout de mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
uint_T* capi_GetDimensionsMatrix(rtwCAPI_ModelMappingInfo* capiMap, uint_T paramIdx)
{
/* J ai coupe tout le code avt car il n est pas necessaire, ce ne sont que des obtentions d informations...*/
actualDimensions = (uint_T *) malloc(numDims*sizeof(uint_T)); /* Voila le Malloc */
for(idx=0; idx < numDims; idx++)
{
actualDimensions[idx] = dimArray[dimArrayIdx + idx];
}
return actualDimensions;
/* et voila, ici j aimerais faire free(actualDimensions) mais on ne va jamais apres le return... */
} |
Quelqu un aurait il une solution sachant que bien evidemment je ne peux pas desallouer avt le return sinon je perds tout ce dont j ai besoin...:aie:
Merci d avance a tous ceux qui pourront me conseiller... :king: