Comment passer des matrices par adresse?? [C] - C++ - Programmation
Marsh Posté le 13-03-2003 à 23:13:24
j'ai du mal a croire que ton programme compile sans warnings: return(fonction) ça renvoie un pointeur sur ta fonction, il faut mettre matrice_fonction. Après ça devrait marcher, les tableaux sont toujours passés par adresse en C
Marsh Posté le 15-03-2003 à 01:51:31
effectivement, return(fonction) ca risque pas de marcher;
return(matrice_function) est mieux mais inutile
void fonction(** m)
{
Marsh Posté le 15-03-2003 à 09:36:45
j'espère que t'oublie pas de faire de l'allocation. de plus [][] ne marche pas avec un **ptr, ce qui est logique.
si tuv eux faire une fonction qui modifie ta matrice, est bien rajoute une indirection de façon a modifié directement le pointeur passé par paramètre.
de plus le type de retour des fonctions doit etre explicit.
void pour main, ou int si tu veux etre conforme à la norme C99
Marsh Posté le 16-03-2003 à 22:06:43
Merki pour vos réponses, mais sinon c'était une erreur de ma part lorsque j'ai écrit le post, dans mon programme j'ai bien mis return(matrice_fonction)
Marsh Posté le 16-03-2003 à 23:27:03
soit j'ai bu, soit ce que tu manipules c'est un pointeur sur un tableau de pointeur
Marsh Posté le 12-03-2003 à 22:23:30
Salut !
Voila mon problème:
Je déclare une matrice dans mon main, je met ses coefs à 0, puis je la fait passer dans une fonction qui va modifier cette matrice, par une égalité avec une autre matrice:
Puis dans une autre fonction j'ai ceci:
donc comment passer la matrice par adresse afin que ses coefs soient modifiées? je sais le faire avec des int, des chars... ,
mais pas avec des matrices.
Message édité par *LighTninG* le 13-03-2003 à 15:37:27