Problème de pointeur en C... [newbee]
Chris
-
Utilisateur anonyme -
Utilisateur anonyme -
salut tout le monde,
bon, je ne suis pas un pro des pointeurs et j'ai un petit souci avec mon programme. Le voici:
le 1er fonctionne bien, et le 2eme core à l'endroit indiqué...
******************************************
static ENTRYB **entries;
ENTRY *hsearch(ENTRY item, ACTION action) {
int r;
ENTRYB *result;
r = hhash(item.key);
result = entries[r]; //--> ça marche
// ...
}
******************************************
static ENTRYB **lp_delayEntryb;
ENTRY *hsearch(ENTRY item, ACTION action, ENTRYB **av_entries) {
int r;
ENTRYB *result;
r = hhashBis(item.key);
result = av_entries[r]; //---> ça core!
// ...
}
*******************************************
alors bon, je me suis dit que c'était l'argument ... mais j'ai pas réussi à résoudre
si quelqu'un pouvait m'aider :(
Merci
bon, je ne suis pas un pro des pointeurs et j'ai un petit souci avec mon programme. Le voici:
le 1er fonctionne bien, et le 2eme core à l'endroit indiqué...
******************************************
static ENTRYB **entries;
ENTRY *hsearch(ENTRY item, ACTION action) {
int r;
ENTRYB *result;
r = hhash(item.key);
result = entries[r]; //--> ça marche
// ...
}
******************************************
static ENTRYB **lp_delayEntryb;
ENTRY *hsearch(ENTRY item, ACTION action, ENTRYB **av_entries) {
int r;
ENTRYB *result;
r = hhashBis(item.key);
result = av_entries[r]; //---> ça core!
// ...
}
*******************************************
alors bon, je me suis dit que c'était l'argument ... mais j'ai pas réussi à résoudre
si quelqu'un pouvait m'aider :(
Merci
A voir également:
- Problème de pointeur en C... [newbee]
- Pointeur souris - Guide
- Curseur Windows 10 : comment bien voir la souris à l'écran - Guide
- Le pointeur de mon pc portable ne marche plus - Guide
- Le pointeur de la souris - Guide
- Pointeur souris avec rond de chargement qui clignote sans arrêts ✓ - Forum Windows
3 réponses
hello
Ca coince à la compilation ou dans le processus ?
Es-tu sûr que tu passes la bon 3ème argument lors de l'appel à ta fonction ? Qu'as tu écris ?
Ca coince à la compilation ou dans le processus ?
Es-tu sûr que tu passes la bon 3ème argument lors de l'appel à ta fonction ? Qu'as tu écris ?
ça compile, mais à l'exécution, ça core... (segmentation fault)
j'ai essayé plusieurs trucs pour le 3eme arguement.
Dans le programme qui amrche, on declare un pointeur de pointeur en static, ce qui limite le nombre de "ENTRYB" à 1. Moi je veux en créer plusieurs donc j'ai retouché...
lors de l'appel de la fonction:
static ENTRYB **lp_delayEntryb;
ENTRY *lp_item;
lp_item=hsearch(lp_Entry, ENTER, lp_Entryb);
j'ai essayé plusieurs trucs pour le 3eme arguement.
Dans le programme qui amrche, on declare un pointeur de pointeur en static, ce qui limite le nombre de "ENTRYB" à 1. Moi je veux en créer plusieurs donc j'ai retouché...
lors de l'appel de la fonction:
static ENTRYB **lp_delayEntryb;
ENTRY *lp_item;
lp_item=hsearch(lp_Entry, ENTER, lp_Entryb);
Tu utilises entries[r] sans initialisation et ca marche ?
Peut etre alors que ton av_entries n'est pas correctement initialisé .
... ou alors ... tu demande l'indice r de ton tableau, or tu passes en paramètres un pointeur de pointeur.
essaie un *av_entries[r] ou av_entries[r][?] ou un changement sur cette valeur... le paramètre est peut-être correct .
bonne chance
Peut etre alors que ton av_entries n'est pas correctement initialisé .
... ou alors ... tu demande l'indice r de ton tableau, or tu passes en paramètres un pointeur de pointeur.
essaie un *av_entries[r] ou av_entries[r][?] ou un changement sur cette valeur... le paramètre est peut-être correct .
bonne chance