Il nest pas possible dutiliser les opérateurs =
, ==
, etc., avec les tableaux. En fait, aucun des opérateurs que nous avons vus sur les nombres nest utilisable avec un tableau. Pour recopier un tableau dans un autre, on peut utiliser une boucle comme celle-ci :
for (int i = 0; i < 20; i++) tab2[i] = tab[i];
ou encore la routine memmove
, qui recopie une partie de la mémoire dans une autre (voir plus loin) :
memmove( tab2, tab, 20*sizeof(int) );
On notera lutilisation de sizeof
pour obtenir la taille des entiers, afin davoir un code portable. On aurait pu aussi écrire sizeof(tab)
au lieu de 20*sizeof(int)
, puisque ici on recopie tout le tableau.
Lutilisation de memmove
nest guère pratique, mais bien plus rapide que la boucle précédente.
Précédent | Sommaire | Suivant |