Pb en C a la mort moi le noeud
Coutelle Guillaume
-
marvinrouge -
marvinrouge -
Bjr,
Si quelqu'un peut me dire pourkoi ça ne marche pas et comment faire marcher merci de me renseigner.
#include <stdio.h>
#define MAX 26
typedef int graphe [MAX][MAX];
int main (void)
{
int i, j;
graphe *g;
for(i=0 ; i<MAX ; i++)
{ for(j=0;j<MAX;j++)
{*g[i][j]=0;
printf("%d %d %d", i,j,*g[i][j]);
}}
return 0;
}
ça fonctionne jusqu'a i=8 et j=5 mais jamais au dela ???? !
Merci
Si quelqu'un peut me dire pourkoi ça ne marche pas et comment faire marcher merci de me renseigner.
#include <stdio.h>
#define MAX 26
typedef int graphe [MAX][MAX];
int main (void)
{
int i, j;
graphe *g;
for(i=0 ; i<MAX ; i++)
{ for(j=0;j<MAX;j++)
{*g[i][j]=0;
printf("%d %d %d", i,j,*g[i][j]);
}}
return 0;
}
ça fonctionne jusqu'a i=8 et j=5 mais jamais au dela ???? !
Merci
A voir également:
- Pb en C a la mort moi le noeud
- Airbag takata mort - Guide
- Ecran bleu de la mort - Guide
- Comment savoir si le processeur est mort ✓ - Forum Matériel & Système
- Échec de la tentative de connexion avec « eai_noname - aucun nom de nœud ou de nom de serveur fourni, ou inconnu ». - Forum DNS
- Comment savoir si la pile du bios est morte - Guide
2 réponses
graphe *g;
/* qd on declare un pointeur, on l'initialise d'abord avant de l'utiliser. Pourqoi ca marche pour i =8 et j =5 ??? eh ben, c'est les droleries du C, tu peux acceder a de la memoire non alloué jusqu'a ce q tu essaies de toucher a de la memoire qui ne t'appartient pas ou que tu ecrases quelque chose qui fasse planter ton code. Ne l'oublie jamais, un pointeur s'alloue avant de s'utiliser. */
tafiscobar "lou waye def bopame"
la nullite n'existe pas, l'ignorance oui, ah je suppose!!!
bjr et merci ....
j'en revient pas d'être assez bête pour pas y avoir pensé tout seul, c'est grave !!
Merci bcp bcp bcp
Guillaume
j'en revient pas d'être assez bête pour pas y avoir pensé tout seul, c'est grave !!
Merci bcp bcp bcp
Guillaume
Salut Guillaume, outre l'oubli d'initialisation qui t'as été signalé moi ce qui me gên c'est que g soit un pointeur (idée de dynamisme, d'allocation selon les besoins) alors que MAX est une constante
donc soit tu fais tout en STATIQUE (g pas pointeur !)
int main (void)
{
int i, j;
graphe g;
for(i=0 ; i<MAX ; i++)
{ for(j=0;j<MAX;j++)
{g[i][j]=0;
printf("%d %d %d", i,j,g[i][j]);
}}
return 0;
}
soit tu fais tout en DYNAMIQUE
donc soit tu fais tout en STATIQUE (g pas pointeur !)
int main (void)
{
int i, j;
graphe g;
for(i=0 ; i<MAX ; i++)
{ for(j=0;j<MAX;j++)
{g[i][j]=0;
printf("%d %d %d", i,j,g[i][j]);
}}
return 0;
}
soit tu fais tout en DYNAMIQUE