Accueil > Forum > > > > Question matrice "indéfini"
Question matrice "indéfini"
mercredi 19 janvier 2005 à 21:27:08 |
Question matrice "indéfini"

LordBob
|
Bonjour a tous, voila je me pose une question, j'aimerais pourquoi quand j'ecris une fonction, je peux faire: Type MaFonction(int Tab[]) mais je ne peux pas faire: Type MaFonction(int Mat[][]) et comment faire pour y remedier. Merci par avance... Bob... "La chance accorde ses faveur aux esprits avertis..."
|
|
mercredi 19 janvier 2005 à 21:59:51 |
Re : Question matrice "indéfini"

otofraise
|
Salut LordBob,
Si je me souviens bien de mes cours de C, les tableaux a deux dimensions sont geres comme des tableaux a une dimension en memoire, c'est a dire que tous les elements du tableau se suivent de cette facon pour un Tab[2][2] par exemple :
| Tab[0][0] || Tab[0][1] || Tab[1][0] || Tab[1][1] |
Donc si tu veux que ton programme puisse determiner à quelle ligne appartient tel element, tu dois indiquer le nombre de colonnes de chaque ligne.
En esperant avoir ete clair dans ma reponse
Oto
|
|
mercredi 19 janvier 2005 à 22:57:44 |
Re : Question matrice "indéfini"

LordBob
|
en fait j'ai pas trop compris ta reponse, vu comment tu le dis il me semble que le problème pour Tab[] et Matrince[][] serait donc le meme... bref de toute facon a premiere vue, il me'est impossible de faire Matrice[][]... donc comment puis-je y parvenir? mon probleme et que, je veux ecrire une fonction qui va recevoir un tableau, mais donc la taille est variable... comment puis-je y parvenir? Bob...
"La chance accorde ses faveur aux esprits avertis..."
|
|
jeudi 20 janvier 2005 à 09:13:03 |
Re : Question matrice "indéfini"

otofraise
|
Re Bob,
En fait pour ce qui est du tableau a 2 dimensions, en memoire il est gere comme un tableau a une dimension ou toute les ligne sont mises bout a bout. Pour que ton programme puisse recomposer "virtuellement" ton tableau a deux dimensions a partir d'un tableau à une dimension, il doit connaitre le nombre de colonne de ce tableau a 2D.
Sinon pour passer un tableau a 2D variable en parametre, un Pointeur de pointeur devrais faire l'affaire. Par exemple pour un tableau d'entier : void MaFonction(int** Tab);
Ce qui, en fait, correcpond a un tableau de tableau et donc a un tableau en 2D.
Reponse un peu meilleure ? 
Oto
|
|
jeudi 20 janvier 2005 à 09:40:11 |
Re : Question matrice "indéfini"

ymca2003
|
lorsque l'on passe un tableau en paramètre, seule une des dimensions peut être omise (celle de gauche), les autres doivent êtres fournie pour que le compilo s'y retrouve.
|
|
jeudi 20 janvier 2005 à 18:36:15 |
Re : Question matrice "indéfini"

LordBob
|
ok je vais donc essayer avec un double pointeur... merci pour votre aide ! Bob...
"La chance accorde ses faveur aux esprits avertis..."
|
|
jeudi 20 janvier 2005 à 21:04:23 |
Re : Question matrice "indéfini"

LordBob
|
ok voila donc un exemple de fonction: L est le nombre de ligne de la matrice C le nombre de colone
// affichage des matrices
void PrintMat(int **matrice, int L, int C)
{
int i, j; // variables pour boucle for
// affichage de la matrice
for(i = 0; i < L; i++)
{
for(j = 0; j < C; j++)
printf("%d", matrice[i][j]);
printf("\n");
}
} le code suivant ne marche pas, comment faire pour faire un truc dans le meme style, mais qui marche, sachant que l'on ne connait pas la taille de la matrice :) Merci par avance Bob... "La chance accorde ses faveur aux esprits avertis..."
|
|
jeudi 20 janvier 2005 à 21:17:56 |
Re : Question matrice "indéfini"

otofraise
|
Quel probleme rencontres tu exactement ? c a la compile ou durant l'execution ? Comment defini tu ta matrice dans la fonction appelante ?
Oto
|
|
jeudi 20 janvier 2005 à 21:24:40 |
Re : Question matrice "indéfini"

LordBob
|
bah en fait c'est pas lors de la compil kil y a une erreur c'est a l'execution, voici la definition de la matrice:
// matrice1
int matrice1[4][6] = {{0, 0, 1, 1, 0, 0},
{0, 1, 1, 1, 1, 0},
{0, 1, 1, 1, 1, 0},
{1, 0, 1, 1, 0, 1}};
// algo pour matrice1
PrintMat(matrice1, 4, 6); // affichage de matriceBob... "La chance accorde ses faveur aux esprits avertis..."
|
|
jeudi 20 janvier 2005 à 21:34:55 |
Re : Question matrice "indéfini"

otofraise
|
Et a l'execution il se passe koi : plantage ou ce ne sont pas les bonne valeur qui s'affichent ?
Sinon essaye de definir ta matrice comme ca :
int ** Matrice1 = new int*[4]; for(int i = 0; i < 4; ++i) Matrice1[i] = new int[6];
J'ai essaye et la ca passe
Oto
|
|
Cette discussion est classée dans : type, question, matrice, mafonction, indéfini
Répondre à ce message
Sujets en rapport avec ce message
Question sur le type "Variant" [ par oberown ]
J'utilise une api, où je recupere une collection d'objet de type Banane Pour récuperer l'objet il faut que j'utilise un *variant. Comment caster mon v
matrices et c++ [ par anne-lise ]
Bonjour, je debute en c++ et j'ai quelques problemes avec les tableaux... D'abord, y a t'il un moyen d'avoir pour resultat d'une fonction un tableau ?
compilation mai erreur a l execution [ par touny23 ]
bon j ai fai une amélioration de mon programme . je galere un peu avec le C mai bon c est un projet , soit disan la base de la methode num.(je croi q
Template matrice [ par anisdilou ]
Je souhaite q'on s'aide a fin d'meliorer nos nivauxSalut : Je veux implémenter une classe qui représente des matrices de dimensions et type de donnés
Question peut-être stupide... [ par bloom1 ]
Bonjour,je suis en train de programmer un petit programme et je voudrais qu'en faisantc=mafonction();c étant un char, me retourne une variable contenu
question bete [ par blanccc ]
bonjour tout le monde, je suis pas du tout un expert en C et j'ai un truc à programmer pour mon stage dans ce langage et ça serait bien pratique si j
opencv BIBLIO [ par atefensi ]
ds la bibliotheque opencv quel est la différence entre iplimage et cvmat? est ce qu'on peut utiliser simultanement la matrice comme de type iplimage
quantifier une image [ par far3ousa ]
j'ai réussi a transformer mon image de type QImage en une matrice de type QRgb je veut mnt multiplier les élément de ma matrice par un reel ,alors
question sur les surcharges et les fonctions amies en c++ [ par maymouna2008 ]
salut tt le monde je veux que vous m expliquer et me donne des reponse ,svp c est urgent, sur un programme en c++:c est un probleme d une fonction ma
le contour d'une matrice*aidez moi* [ par robi987 ]
salut,je suis etudiante en informatique en 1 er annee donc je suis debutante et j'ai recontré quelque difficultés à mes etudes c'
Livres en rapport
|
Derniers Blogs
POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc
Forum
MATLAB PROGRAMME MATLAB PROGRAMME par wahab1087
Cliquez pour lire la suite par wahab1087 RGB2GRAYRGB2GRAY par musa18
Cliquez pour lire la suite par musa18
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|