Erreur Pointeur :s

Résolu/Fermé
MiniMonster Messages postés 8 Date d'inscription dimanche 23 octobre 2011 Statut Membre Dernière intervention 2 mars 2012 - 23 oct. 2011 à 18:34
cap'tain sheeps Messages postés 447 Date d'inscription jeudi 19 mai 2011 Statut Membre Dernière intervention 1 octobre 2014 - 23 oct. 2011 à 21:45
Bonjour tout le monde !
Voila .. ça fait 2 heure que je cherche une solution sur internet mais pas moyen de trouver :s
J'ai écris ce code en C et lors de la compilation (gcc -c choixTest.c ) il me marque ça
==> choixTest.c:20: error: lvalue required as unary `&' operand
Je comprend pas mon erreur vous pourriez m'aider svp ?

Voici le code:
#include <stdio.h>
#include <stdlib.h>
#include "tableau.h"
#include "tri_a_bulle.h"
#include "choixTest.h"

void (*pf)(tableau, int);

int *choixTest(){
    int i;
    void (*pf)(tableau, int);
    printf("XXXXXXXX\n");
    printf("XXXXXXX.\n\n");
    printf("XXXXXXX\n");
    printf("1. - Tri a bulle \n");
    printf("9. - Quitter\n");
    scanf("%d",&i);
    switch (i) {
        case 1:
            pf = &(tri_a_bulle());   /* c'est la ligne 20*/
            return pf;
            break;
            
        case 9:
            printf("Au revoir !");
            return 0;
            break;
            
        default: printf("Il faut entrer un des choix proposer\n");
            printf("relancer l'execution\n");
            return 0;
            break;
    }
} 


Merci pour vos réponses :)

3 réponses

cap'tain sheeps Messages postés 447 Date d'inscription jeudi 19 mai 2011 Statut Membre Dernière intervention 1 octobre 2014 10
23 oct. 2011 à 20:59
Salut,

Pourquoi &(tri_a_bulle()) et pas tri_a_bulle() ?
1
MiniMonster Messages postés 8 Date d'inscription dimanche 23 octobre 2011 Statut Membre Dernière intervention 2 mars 2012
23 oct. 2011 à 21:15
ho ca marche !! :) ben pourtant j'ai regarde pas mal de site et souvent je trouvais l'écriture comme je l'avais mis moi .... avec le '&' devant ...
Merci beaucoup !! :)

Dites vous pourriez me dire ce que je dois faire pour faire partir les warning ?
choixTest.c:21: warning: implicit declaration of function `tri_a_bulle'
choixTest.c:21: warning: assignment makes pointer from integer without a cast
choixTest.c:22: warning: return from incompatible pointer type

Merci
0
cap'tain sheeps Messages postés 447 Date d'inscription jeudi 19 mai 2011 Statut Membre Dernière intervention 1 octobre 2014 10
23 oct. 2011 à 21:34
Hey, c'est la famille ici ! Le tutoiement est de rigueur ! ;-)

Désolé, ça fait 6 mois que j'ai pas programmé, je suis devenu un peu nul, je saurais pas te dire pour tes warning...
Regarde si le type de pf est compatible avec le type que retourne les fonctions qui l'utilisent, ça devrait être plus ou moins ça... :s
0
MiniMonster Messages postés 8 Date d'inscription dimanche 23 octobre 2011 Statut Membre Dernière intervention 2 mars 2012
23 oct. 2011 à 21:43
genial c'est bon :) merci beaucoup :D
0
cap'tain sheeps Messages postés 447 Date d'inscription jeudi 19 mai 2011 Statut Membre Dernière intervention 1 octobre 2014 10
23 oct. 2011 à 21:45
'vec plaisir !
La force de Randy Orton soit avec toi.

Sheeps.
0