Accueil > Forum > > > > tableau 2 dimension en C
tableau 2 dimension en C
mardi 17 janvier 2006 à 03:05:54 |
tableau 2 dimension en C

Babar51
|
voila je cherche a modifié une entrée dans un tableau a 2 dimension en C ... j ai essayé le code suivant mais je n obtien que des echec ... en bon debutant je solicite votre aide :)
void Cap_mID(int *CapInfo[50][5],int id, int nvoid) { *CapInfo[Cap_chID(&CapInfo,id)][0]= nvoid; }
int Cap_chID(int CapInfo[50][5], int id) { int i=0; while (Cap_ID(CapInfo,i)!=id) i++; return i; }
si quelqu'un pourrai m expliqué comment corrigé se code pour qu il fonctionne cela m arrangerai beaucoup
Merci
|
|
mardi 17 janvier 2006 à 11:30:40 |
Re : tableau 2 dimension en C

Alucards
|
Salut , tu dois creer un tableau a 2 entrees
int tableau [50][5]; // donc chaque case de ton tableau contient un int
apres si tu veux modifier les entrees de ton tableau tu dois parcourir le parcourir avec 2 boucles .
for(int i = 0; i <50; i++)
{
for(int j = 0; j <5; j++)
{
tableau[i][j] = 0; // ou la valeur que tu veux stocker
}
}
je pense que se sera plus simple de faire cmme cela
Tous les chemins mènent au RHUM !!!!!!!!!!!!!!!!!!!..............................
|
|
mardi 17 janvier 2006 à 11:39:09 |
Re : tableau 2 dimension en C

Babar51
|
le probleme c est que je veux faire sa en procédure ... et j ai un probleme avec les pointeurs
merci quand meme de ta reponse
|
|
mercredi 18 janvier 2006 à 11:45:00 |
Re : tableau 2 dimension en C

ctx_man
|
Salut,
Normalement c'est interdit de passer un tableau en parametre. Il y a une legere difference entre la declaration d'un tableau et celle d'un pointeur sur pointeur. Comme tu n'a pas le droit de passer un tableau en parametre, tu n'a pas le droit de definir sa taille : int **CapInfo //et non int CapInfo[50][5]
Quand tu declare un pointeur sur pointeur, tu declare en fait plusieur chose un pointeur sur pointeur qui ponte sur un tableau contenant lui-meme des pointeurs vers le type désiré.
//Declaration et allocation du tableau de pointeur //Il doit faire la taille du nombre de ligne int **CapInfo = (int*) malloc(50*sizeof(int*));
//Initialisation du tableau de pointeur int i = 0; while(i < 50) { //Allocation de chaque colonne du tableau CapInfo[i] = (int) malloc(5*sizeof(int)); i++; }
Et seulement maintenant tu as le droit de faire CapInfo[10][3] = 20; Tu peux aussi, maintenant que le tableau de pointeur pointe au bon endroit, le passer en parametre. C'est de l'allocation dynamique, donc tu DOIS ABSOLUMENT penser a désallouer avant que ton programme se termine :
//Desallocation des colonnes int i = 0; while(i < 50) { free(CapInfo[i]); } //Desallocation des lignes free(CapInfo);
Le travail c'est la santé, ne rien faire c'est la préservé !!!
|
|
mercredi 18 janvier 2006 à 14:30:29 |
Re : tableau 2 dimension en C

deck_bsd
|
Wohohooo c'est quoi c'est? int *CapInfo[50][5] ;) c'est pas bon tu doit déclarer comme ceci :
soit int *CapInfo[]
soit int CapInfo[50][5] /* pas recommandé, mais ça marche */
soit int **CapInfo
:D
Pour le reste (j'avai pas lu) ctx_man te la expliqué :p
bon code
++All
|
|
lundi 23 janvier 2006 à 11:42:53 |
Re : tableau 2 dimension en C

ctx_man
|
Petite precision :
int *Capinfo[]; // Normalement interdit en C
Il manque une taille de tableau ou une liste d'initialisation. Le compilateur ne peut donc pas savoir la taille du tableau de pointeur a allouer. Cette declaration est valable uniquement pour char *argv[] dans le main dans la mesure ou c'est le system qui fixe la taille maximale du parametre. La taille n'est donc pas a specifier puisque le system la connait.
|
|
Cette discussion est classée dans : int, tableau, id, capinfo, cap
Répondre à ce message
Sujets en rapport avec ce message
tableau de caracteres [ par infodaoudi ]
bonjour,j'ai une classeclass fich{int id;char *fich}je veux initialiser une liste de cette classeFich::Fich(int a){for(int i=0;i{ id=i; fich= "<fo
Allocation tableau dynamique ds structure [ par chental ]
Salut à tous,Sauriez vous me dire comment allouer dynamiquement un tableau dans une structure ?J'arrive à faire l'essentiel mais dans la structure je
générer une Pyramide dans un tableau à 2 dimensions [ par Selig ]
Bonjour à tous, je débute en C et voila je bloque sur un exercice :Je dois générer une Pyramide dans un tableau à 2 dimensions dont je rentre la base,
remplir un tableau avec des valeur aléatoire [ par Strick9 ]
Bonjour à tous,voila je voudrai remplir un tableau avec des valeur aléatoirepar exemple:{int t[50],i;for(i=0;it[i]= ????????? je sais qu'en java ça
initialisation d'un tableau de structure [ par thmatew ]
Bonjour a tous,meme si je ne débute pas en C je pense que ce message doit etre poser ici.je n'arrive pas a initialiser une structure en brut, un Exemp
Trie bulle [ par afrikanoo ]
#include #include void main(){ clrscr(); int n; <font color="#d3d3d
appeler procedure passage par variable [ par sakjimh ]
salut,j'ai reussit a crée une procedure qui initialise une matrice carrée avec un pointeur **pvoid ini_matrice(int **p,int n){ int i,j; p=(int
Un tableau statique dans une méthode: c'est mal? [ par harddisk ]
Bonjour,j'ai une méthode qui retourne un int (code ci-dessous):chercher une couleur dans une main de cartes, une main comprenant en membre un tableau
Allocation dynamique, tableau à 2 dimensions [ par seb013 ]
SalutMon problème est simple (la solution je ne sais pas). Je veux faire une allocation dynamique pour un tableau à deux dimensions. Alors pour un ta
allocation dynamique d'un tableau [ par elpens ]
Bonjour à tous,J'ai trouvé quelques thème sur ce forum concernant ma question, mais je n'arrive pas à l'appliquer...J'aimerai allouer dynamiquement la
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
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
|