Bonjour,

J ai de nouveau un problème, toujours avec mon programme:
Je travail un générateur de nombre aléatoire intitulé
ran2
qui prend en argument un pointeur, &iseed.
maintenant, j appelle cette fonction à l intérieur d une autre fonction :
generate_matrix :


*******fichier matrix.h******

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
extern void generate_matrix(double matrix[nx][ny],long *iseed);
*******fichier matrix.c*****

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
void generate_matrix(double matrix[nx][ny],long *iseed){
long i,j ;
for (i=0;i<nx;i++){
for (j=0;j<ny;j++){
double rand=ran2(&iseed) ;
matrix[i][j]=(rand<0.5) ? (matrix[i][j]=-1.) : (matrix[i][j]=1.) ;
printf("matrix[%d][%d]=%f\n",i,j,matrix[i][j]) ;
}
}
printf("I m going out of generate matrix\n") ;
}
//puis quand j appelle dans ma fonction main, je fais :


*******fichier main.c *****************

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
generate_matrix(matrix,&iseed) ;
**************************************

Il me retourne :
matrix.c:28: warning: passing argument 1 of 'ran2' from incompatible pointer type
(j ai essayé un peu toutes les combinaisons de *,&,rien imaginables, et ben ça marche toujours pas).

Que dois je faire?

Merci d avance pour vos réponse.

Olivier