Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it L'avatar di gaten
    Registrato dal
    Jul 2007
    Messaggi
    1,269

    [C] syntax error before "MYSTRUCT"

    file1.h

    codice:
    #ifndef FILE1_H
    #define FILE1_H
    
    typedef struct _mystruct {
    ...
    } MYSTRUCT;
    
    ...
    
    
    #endif
    file2.h

    codice:
    #ifndef FILE2_H
    #define FILE2_H
    
    #include "file1.h"
    
    ...
    void foo( MYSTRUCT s );
    
    #endif
    mi dà il seguente errore:

    17 C:\Users\Gaten\Desktop\Fuga\file2.h syntax error before "MYSTRUCT"

    come mai
    Con i sogni possiamo conoscere il futuro...

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    707
    Ci sarà qualche errore dove hai messo i puntini di sospensione perché il resto è giusto.

  3. #3
    Utente di HTML.it L'avatar di gaten
    Registrato dal
    Jul 2007
    Messaggi
    1,269
    Pacman.h
    codice:
    #ifndef PACMAN_H
    #define PACMAN_H
    
    #include "Console.h"
    #include "Mappa.h"
    
    #define BONUSTIME 50                                            // Tempo di attività del bonus
    #define BONUSSCORE 1000	                                        // Punti acquisiti quando mangio il bonus
    #define DEADTIME 25	                                            // Tempo di inattività di un ghost mangiato
    #define PACMAN_COLOR 0x0E
    
    typedef struct _pacman
    {
            int PacX;
            int PacY;
            int PacWait;
    } PACMAN;
    
    PACMAN initPacman( int x, int y, int Time );
    void StampaLivello( MAPPA *M );
    void StampaPacman( PACMAN P );
    
    #endif
    Mappa.h
    codice:
    #ifndef MAPPA_H
    #define MAPPA_H
    
    #include "Pacman.h"
    
    typedef struct _mapppa
    {
            int **Mappa;
            int NRighe;
            int NColonne;
            int InizioX;
            int InizioY;
            int FineX;
            int FineY;
    } MAPPA;
    
    void StampaRiquadro( MAPPA *M, PACMAN P );
    MAPPA *CreaMappa ( char * );
    
    #endif
    Ecco il codice completo . . .
    Con i sogni possiamo conoscere il futuro...

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    707
    Proviamo così senza che debba fare una prova sul mio pc.

    È probabile (non è detto) che hai problemi perché hai un riferimento incrociato (a include b e viceversa).

    Perché non sposti:
    void StampaLivello( MAPPA *M );
    in Mappa.h visto che il suo posto è quello?
    Poi togli:
    #include "Mappa.h"
    da Pacman.h e mi dici se lo fa ancora.

  5. #5
    Utente di HTML.it L'avatar di gaten
    Registrato dal
    Jul 2007
    Messaggi
    1,269
    Ora sembra andare però mi dà solo questo errore:

    codice:
      [Linker error] undefined reference to `WinMain@16'
    Ho anche provato a fare "Riassembla tutto" ma non và!
    Con i sogni possiamo conoscere il futuro...

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    707
    In realtà non dovresti aprire un altro thread per un altro problema?

  7. #7
    Utente di HTML.it L'avatar di gaten
    Registrato dal
    Jul 2007
    Messaggi
    1,269
    Risolto, dovevo mettere giustamente

    #include "Mappa.h" nel main poichè faccio una cosa del tipo:

    MAPPA *M; e non trovava il tipo MAPPA.


    Ovviamente qualora avessi bisogno di MAPPA in Pacman.c, dovrò fare

    #include "Mappa.h" in "Pacman.h"

    Inoltre, è giusto fare in ogni file header

    codice:
    #ifndef PACMAN_H
    #define PACMAN_H
    
    ..
    
    #endif
    ???
    Con i sogni possiamo conoscere il futuro...

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    707
    Bisognerebbe che ti accattassi un libro di C comunque guarda qui:
    http://gcc.gnu.org/onlinedocs/cpp/On...y-Headers.html

  9. #9
    Utente di HTML.it L'avatar di gaten
    Registrato dal
    Jul 2007
    Messaggi
    1,269
    Bè direi che è quello che ho detto no?
    Con i sogni possiamo conoscere il futuro...

  10. #10
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    707
    Il mio riportarti il link era per capire perché si faceva, non solo un si/no.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.