Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problemes de fonctions

error : called object is not a fonction

    1 janvier 2006 à 11:57:24

    Bonjour à tous,
    Voila mon problème j'ai pas mal de mal a maitriser les fonctions et je voudrais une petite aide car j'ai essayé de faire avec plusieurs fichiers et ca marchge pas :colere:


    Fichier 1 : main.c
    #include <stdio.h>
    #include <stdlib.h>
    #include "complementaire.h"

    long menu(long choix);
    int main(int argc, char *argv[])
    {
      long choix;

     
      printf("Voici le menu : \n\n");
      printf("1. Un gros steack a l'ail\n");
      printf("2. Des aubergines avec un bon jus de chocolats chaud\n");
      printf("3. Des P%ctes au pamplemousse, soupoudr%c de cassoulet\n\n",133,130);
      printf("Votre choix : ");
      scanf("%ld",&choix);
      printf("\n\n");
      menu(choix);
      system("PAUSE");     
      return 0;
    }
     
    long menu(long choix)
    {
      long choixSteak, choixChoc, choixPates, choixDeux;

     switch (choix)
     {
       case 1:
       printf("Grille ou non le steak ? 1 pour grille et 2 pour non");
       scanf("%ld",&choixDeux);
       choixSteak(choixDeux);
       break;
     
       case 2:
       printf("Chaud ou froid le chocolat ? 1 pour chaud et 2 pour froid");
       scanf("%ld",&choixDeux);
       choixChoc(choixDeux);
       break;
     
       case 3:
       printf("Quelle taille le pamplemousse?");
       scanf("%ld",&choixDeux);
       choixPates(choixDeux);
       break;     
     
       default:
       printf("Vous avez du vous plantez que ca ne m'ettonerait pas !! Y'a plus qu'a recommencer !");
       break;
     }
     
    }


    Fichier 2 : complementaire.h
    #include "complementaire.c"


    void choixSteak(long choixDeux);
    void choixChoc(long choixDeux);
    void choixPates(long choixDeux);


    Fichier 3 complementaire.c

    void choixSteak(long choixDeux)
    {
      switch (choixDeux)
      {
        case 1:
        printf("Vous avez choisis un steak grille, bon appetit ! ");
        break;
       
        case 2:
        printf("Vous avez choisis un steak tartare, bon appetit (beurk) ! ");
        break;
       
        default:
        printf("Arriver si près du but et vous vous plantez... ! Je vous laisse recommencer ! ");
        break;
       
      }
    }


    Je pense que vous saurez trouver les erreurs car le code n'est pas très compliqué ! (ca n'empêche que je n'ai pas trouver l'erreur :D )

    EDIT: J'ai fait exprès de mettre plusieurs fichiers afin de m'entrainer avec plusieurs fichiers(on se repete :lol: ) Je n'ai pas l'intention de tout rassembler.
    • Partager sur Facebook
    • Partager sur Twitter
      1 janvier 2006 à 12:10:03

      Citation : Yoshito

      long menu(long choix)
      {
         long choixSteak, choixChoc, choixPates, choixDeux;
         ...
         choixSteak(choixDeux);
         ...
         choixChoc(choixDeux);
         ...
         choixPates(choixDeux);


      tu voit pas ton erreur la?
      tu déclare des vars qui ont le même nom que des fonctions, puis tu les appelles. pour le compilo, t'appelle les vars.

      Citation : Yoshito

      #include "complementaire.c"

      void choixSteak(long choixDeux);
      void choixChoc(long choixDeux);
      void choixPates(long choixDeux);


      Non, on inclue _jamais_ de .c, c'est pas possible. le .c inclue le .h, mais pas le contraire.
      • Partager sur Facebook
      • Partager sur Twitter

      Problemes de fonctions

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown