Problème de realloc de pointeur passé en paramètre de fonction
Bonjour à tous,
Je fais face à une erreur lorsque je tente de reallouer l'espace mémoire d'un pointeur passé en paramètre d'une fonction.
Voici mon pseudo code qui modifie juste la taille de ma variable X:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| int main (void)
{
double *X;
X = (double*)calloc(10,sizeof(double));
// pour i=0 jusqu'à 10 X[i] = i ;
fonction(X);
}
fonction( double *X)
{
int newDim = 15;
X = realloc(X, newDim*sizeof(double));
} |
A la compilation je n'ai pas de problème, mais lorsque je lance le programme j'ai cette erreur :
Citation:
*** glibc detected *** ./myProg: realloc(): invalid next size: 0x000000000462a670 ***
======= Backtrace: =========
/lib64/libc.so.6[0x3dfcc7421b]
/lib64/libc.so.6(realloc+0x1d0)[0x3dfcc751a0]
[...]
Merci pour votre aide :)