Supprimer élément d'un tableau générique en C
Bonjour,
Je voudrais écrire une function en C qui prend en paramètre un tableau générique et l'indice d'un element à supprimer. Voilà ma fonction :
Code:
1 2 3 4 5 6 7 8 9 10 11
|
void delete_data(void * array[], size_t nb_elt, size_t size_elt, int index)
{
size_t i;
for (i = index; i < nb_elt-1; i++)
{
void *ptr = array +i;//pointer on the (i+1)-th element
array[i]=array[i+1];
}
array[nb_elt-1]= 0;
} |
Je la teste dans mon main sur un tableau d'entier :
Code:
1 2 3 4 5 6 7 8 9
|
int T[]={0,1,2,3,4,5,6,7,8,9};
delete_data(T, sizeof(T)/sizeof(T[0]),sizeof(T[0]), 1);
int i;
for (i=0; i< sizeof(T)/sizeof(T[0]); i++)
{
printf("%d\n", T[i]);
} |
Malheureusement voilà le résultat affiché :
Code:
1 2 3 4 5 6 7 8 9 10 11
|
0
1
4
5
6
7
8
9
0
0 |
Pouvez-vous m'aider svp ? Merci d'avance !