We were unable to load Disqus. If you are a moderator please see our troubleshooting guide.

LVinss • 11 months ago

Bonjour,

J'ai réussi vos précédents exercices mais je me retrouve bloqué pour celui là.

En effet, j'ai organisé mon code pour cet exercice en deux fonctions : une
qui parcours le tableau en diagonal et l'autre qui swap les valeurs du
tableau par rapport à cette même diagonale.

Seulement, j'obtiens une erreur que je ne comprend pas sur ma fonction de swap :
void echangerValeur(void *v1, void* v2, size_t size)
{
void *v3 = malloc(size);
if (v3 != 0)
{
memmove(v3, v1, size);
memmove(v1, v2, size);
memmove(v2, v3, size);
free(v3);
}
}

J'appelle cette fonction via la ligne ci-dessous
echangerValeur(&tableau[x+1][y], &tableau[x][y+1], sizeof(int *));

L'erreur que je récupère est la suivante : Thread 1 Heap buffer overflow
Merci par avance pour votre réponse !