On peut utiliser &a quand on veut un pointeur sur tableau.
Utile dans la déclaration d'une fonction pour s'assurer que le tableau a une taille donnée:
Edit: Bizarre, sous Visual 2005, je n'ai droit qu'à des warnings:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 void EcritDansTableau(int (*pTab)[10]) { int *pVal = *pTab; /*conversion implicite int[10] -> int* */ size_t i; for(i=0 ; i<10 ; i++) pVal[i] = (int)(i*2); } int main(void) { int tab1[8]; int tab2[10]; int tab3[12]; EcritDansTableau(&tab1); /* Echec, trop petit */ EcritDansTableau(&tab2); /* OK */ EcritDansTableau(&tab3); /* Echec, trop grand */ return 0; }
Edit2: Jean-Marc : Parfait1>c:\<snip>\testarrayc.c(132) : warning C4048: different array subscripts : 'int (*)[10]' and 'int (*__w64 )[8]'
1>c:\<snip>\testarrayc.c(134) : warning C4048: different array subscripts : 'int (*)[10]' and 'int (*__w64 )[12]'![]()
Partager