Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    [C] Programmazione multimodulo

    ho un problema con la programmazione multi modulo:
    ho creato un .h chiamato 'server' con la sua protezione(#ifndef ecc...), e prototipi delle funzioni dichiarate extern. poi il suo .c che include il server.h, quindi lo svolgimento delle funzioni, introdotte dal .h . ora se devo testare il tutto creo un .c detto 'client' che include il .h di prima e usa le funzioni. Ma mi da errore del linker che non trova il nome delle funzioni. mentre se metto il main del client nel server.c non mi da errore. cosa ho sbalgiato?

  2. #2
    Devi dire al compilatore/linker con quali moduli è composto il tuo progetto. Ad esempio con gcc (i686-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1 (Apple Computer, Inc. build 5367)):
    main.c include (ed utilizza) test.h contenente la dichiarazione extern di una funzione di test definita in test.c
    codice:
    $ gcc main.c test.c

  3. #3
    grazie ho risolto. faccio fare tutto a devc++ creando un nuovo progetto e compilando il progetto e non il songolo .c funziona. si crea anche il makefile in automatico.
    Piuttosto so di avere delle lacune proprio su quello che sto per domandare. se devo creare delle funzioni che lavorano su un file cioè lo prendono in input cosa devo mettere nella firma della funzione?cioè nella sua dichiarazioe nel .h?

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.