Bonjour,

Je m'essaye aux tableaux dynamiques avec le code suivant, mais j'ai visiblement un soucis que je ne trouve pas.

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
 
/* Pleins de choses avant */
 
	    int nodes[get_nb()][get_node_number(0)];
 
	    memset (nodes, 
		    0, 
		    get_nb() * get_node_number(0) * sizeof (int));
 
/*	    DEBUGSTR1 ("Size : %lu", sizeof (nodes_if_lists)); */
/*	    nodes_if_lists[1][1] = 12; */
/*	    DEBUGSTR1 ("content : %d", nodes_if_lists[1][1]); */
 
	    save_nodes (nodes);
 
/* Pleins de choses apres */
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
21
22
23
24
25
/**
 * Save identifiers of all nodes
 * 
 *@param nodes : allocated list in which function will store data.
 *       
 *@return void
 *
 */
void save_nodes (int ** nodes)
{
    int i;
    int j;
 
    if (nodes != NULL)
    {
	for (i = 0 ; i < get_nb() ; i++)
	{
	    for (j = 0 ; j < get_node_number(0) ; j++)
	    {
		nodes_if_list[i][j] =1;
	    }
	}
    }
    return;
}
Et voici le soucis que j'ai a la compilation, avec gcc :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
warning: passing arg 1 of 'save_nodes' from incompatible pointer type
Comme vous le voyez avec le code commenté, lorsque j'écris directement dans mon tableau, tout fonctionne parfaitement. Le soucis ne survient que si j'appelle une fonction avec le tableau en paramètre.

Est-ce que quelqu'un voit ou se situe mon problème, et saurait en plus me l'expliquer ?