Bonjour,
Comment passe t-on un tableau de deux dimensions à une fonction?
Je veux utiliser le passage par pointeur, car les dimensions ne sont pas connues.
Merci d'avance.
Bonjour,
Comment passe t-on un tableau de deux dimensions à une fonction?
Je veux utiliser le passage par pointeur, car les dimensions ne sont pas connues.
Merci d'avance.
Les hommes sont des caisses fermées dont la clé est l'épreuve..
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 void fill_t(int * t, size_t dim1, size_t dim2); int main() { int t[5][50]; fill_t((int *)t, 5, 10); return 0; } void fill_t(int * t, size_t dim1, size_t dim2) { for(size_t i = 0; i < dim1; i++) for(size_t j = 0;j < dim2; j++) // t[i][j] = -1; t[i * dim2 + j] = -1; }
Merci pour la réponse !
pouvez vous m'expliquez pourquoi on fait le casting (int*)?
Les hommes sont des caisses fermées dont la clé est l'épreuve..
int t[5][10]; aurait également pu s'écrire :
Le cast est requis car un T10 [5] peut être converti sans cast en T10 * et évidemment en void * mais un T10 * ne peut pas être converti sans cast en int *, c'est tout.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 typedef int T10[10]; T10 t[5];
Merci beaucoup
Les hommes sont des caisses fermées dont la clé est l'épreuve..
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager