Tableaux

Tableaux - C - Programmation

Marsh Posté le 21-09-2009 à 23:14:15    

Bonsoir,
 
Dans le code ci-dessous:
 
 

Code :
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. int main()
  4. {
  5.   int tabi[3], tabj[3];
  6.   int i;
  7.   for (i=0;i<3;i++)
  8.     tabi[i]=2;
  9.   tabj=tabi;
  10.   printf("%d \n",tabj[2]);
  11.   return (0);
  12. }


il semblerait que tabj=tabi; soit incorrect. Pourquoi donc? :??:  
 
Merci d'avance.

Reply

Marsh Posté le 21-09-2009 à 23:14:15   

Reply

Marsh Posté le 22-09-2009 à 01:12:52    

Salut
tu ne peux pas copier un tableau ainsi. tabi n'est en gros que l'adresse d'une zone mémoire pouvant contenir 3 entiers. Tu ne fais que copier des adresses en faisant tabj=tabi. D'ailleurs tabj ne doit pas être modifiable et le compilateur doit râler non?
Pour copier un tableau tu dois le faire élément par élément dans une boucle ou avec memcpy().


---------------
deluser --remove-home ptitchep
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed