Les pointeurs
Fermé
mimou
-
22 nov. 2007 à 16:23
Carri€ Messages postés 41 Date d'inscription lundi 19 février 2007 Statut Membre Dernière intervention 27 novembre 2007 - 23 nov. 2007 à 10:14
Carri€ Messages postés 41 Date d'inscription lundi 19 février 2007 Statut Membre Dernière intervention 27 novembre 2007 - 23 nov. 2007 à 10:14
4 réponses
jemakaku
Messages postés
11
Date d'inscription
jeudi 22 novembre 2007
Statut
Membre
Dernière intervention
9 juin 2009
1
22 nov. 2007 à 18:51
22 nov. 2007 à 18:51
Hum... de tête (ah bah finallement non, j'ai testé! ^^) ça donnerait quelque chose dans le style... (j'espère que c'est en langage C ^^)
#include <stdio.h>
int main(void)
{
int ** p_p_nombres=NULL; // pointeur de pointeurS de nombreS
int n_lignes=10; // nombre de ligne (ou de colonnes, ca dépend comment tu veux t'organiser)
int n_colonnes=5; // idem
int i=0,j=0;
p_p_nombres=(int**)malloc(sizeof(int*)*n_lignes); // j'alloue de l'espace pour les lignes (j'aurai donc 10 pointeurs d'integer)
for (i;i<n_lignes;i++) // maintenant j'alloue de l'espace pour les colonnes
{
*(p_p_nombres+i)=(int*)malloc(sizeof(int)*n_colonnes);
}
// petit affichage pour le plaisir
printf("\nColonnes 0 1 2 3 4");
printf("\n ---------------------\n");
for (i=0;i<n_lignes;i++)
{
printf("Ligne %d | ",i);
for (j=0;j<n_colonnes;j++)
{
*(*(p_p_nombres+i)+j)=i*n_lignes+j; // j'initialise juste pour le plaisir encore
// j'utilie la notation "tableau" pcq bon.. c'est plus clair...
printf("%4d",p_p_nombres[i][j]);
}
printf("\n");
}
getchar();
return 0;
}
}
Bon amusement!
Jema
#include <stdio.h>
int main(void)
{
int ** p_p_nombres=NULL; // pointeur de pointeurS de nombreS
int n_lignes=10; // nombre de ligne (ou de colonnes, ca dépend comment tu veux t'organiser)
int n_colonnes=5; // idem
int i=0,j=0;
p_p_nombres=(int**)malloc(sizeof(int*)*n_lignes); // j'alloue de l'espace pour les lignes (j'aurai donc 10 pointeurs d'integer)
for (i;i<n_lignes;i++) // maintenant j'alloue de l'espace pour les colonnes
{
*(p_p_nombres+i)=(int*)malloc(sizeof(int)*n_colonnes);
}
// petit affichage pour le plaisir
printf("\nColonnes 0 1 2 3 4");
printf("\n ---------------------\n");
for (i=0;i<n_lignes;i++)
{
printf("Ligne %d | ",i);
for (j=0;j<n_colonnes;j++)
{
*(*(p_p_nombres+i)+j)=i*n_lignes+j; // j'initialise juste pour le plaisir encore
// j'utilie la notation "tableau" pcq bon.. c'est plus clair...
printf("%4d",p_p_nombres[i][j]);
}
printf("\n");
}
getchar();
return 0;
}
}
Bon amusement!
Jema
Carri€
Messages postés
41
Date d'inscription
lundi 19 février 2007
Statut
Membre
Dernière intervention
27 novembre 2007
29
22 nov. 2007 à 18:53
22 nov. 2007 à 18:53
C'est pas tres clair tous ca..tu as une matrice...on va dire un tableau....a l'interieur duquel il y a un autre tableau c'est ca? bon et apres qu'est ce que tu veux en faire?? donnes nous deja ton debut de code s'il te plais...je garant rien mais ca pourrai nous donner une bonne base. ;o)
mype
Messages postés
2435
Date d'inscription
jeudi 1 novembre 2007
Statut
Membre
Dernière intervention
16 août 2010
435
22 nov. 2007 à 22:00
22 nov. 2007 à 22:00
en faite une matrice 2d c'est la combinaison de deux tableau 1d je pense que c'est ça son truc(2 tableau...dans une matrice) donc le code de jemakaku repond parfaitement a la question il faut utiliser un pointeur de pointeur
Carri€
Messages postés
41
Date d'inscription
lundi 19 février 2007
Statut
Membre
Dernière intervention
27 novembre 2007
29
23 nov. 2007 à 10:14
23 nov. 2007 à 10:14
haha! PAs de soucis oui! je m'apercois que j'ai repondu en même temps que jemakaku donc ca voir ca reponse...a la prochaine! ;o)