Bonjour,
Comme vous avez pu le voir mon problème provient du fait que je souhaite réaliser un pointeur sur un tableau 2 dimensions.
Et là ça bug impossible de le faire fonctionner :
error: cannot convert `int (*)[5][1]' to `int**' in initialization
et voici mon code complet :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| #include <iostream>
using namespace std;
void fonction(int ** adresse);
int test = 6;
int * ptest = &test;
int tableau[5][1];
int ** ptableau = &tableau;
int ** ptabl;
int ** ptable;
int main()
{
tableau[1][1] = 2;
cout << "valeur par action direct : " << test <<endl;
cout << "adresse : " << ptest << endl;
cout << "valeur par pointeur : " << *ptest <<endl;
cout << "Tableu normal : " << tableau[1][1]<<endl;
cout << "adresse tableau : " << ptableau <<endl;
cout << "valeur tableau : "<< ptableau[1][1] <<endl;
ptabl = ptableau;
cout << "adresse tableau par tbl : " << ptabl <<endl;
cout << "valeur tableau par tbl : " << ptabl[1][1] <<endl;
cout << "appelle fonction"<<endl;
fonction(ptableau);
return 0;
}
void fonction(int ** adresse)
{
cout << "dans la fonction" << endl;
ptable = adresse;
cout << "adresse table : " << adresse <<endl;
cout << "valeur table : "<< adresse[1][1] <<endl;
} |
Merci pour d'avance votre réponse.
Partager