|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Sep 2002
Città: Celano (AQ) Segno_Zodiacale: Leone Ascendente: Cammello Segni_Particolari: Quello
Messaggi: 9571
|
[C] Non mi include i miei header files!
Salve a tutti, ho un problema in c. Ho creato un file header per la gestione delle liste dove ho scritto tutti i prototipi che ho chiamato list.h e invece nel file list.c ho scritto le funzioni vere e proprie. Nel codice del programma che andrà ad utilizzare questi header file ho specificato di includerli scrivendo
#include "list.h" ma ogni volta che provo a compiilare mi dà il linker error perchè è come se non includesse quei files! Ho messo quei files sia nella cartella dove salvo tutti i programmi da compilare sia nella cartella 'include' della directory di installazione dei compilatori (uso sia dev c++ che lcc). Non so che fare, aiutatemi! |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Che errori ti da di preciso ?
|
![]() |
![]() |
![]() |
#3 | |
Senior Member
Iscritto dal: Sep 2002
Città: Celano (AQ) Segno_Zodiacale: Leone Ascendente: Cammello Segni_Particolari: Quello
Messaggi: 9571
|
Quote:
![]() |
|
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Riportami pari pari l'errore e la riga sulla quale ti da l'errore...
Dove hai definito "_length" ? |
![]() |
![]() |
![]() |
#5 | |
Senior Member
Iscritto dal: Sep 2002
Città: Celano (AQ) Segno_Zodiacale: Leone Ascendente: Cammello Segni_Particolari: Quello
Messaggi: 9571
|
Quote:
Codice:
#include <stdio.h> #include "list.h" void main () { } void inverti (link testa) { int lung=length(testa); link a[lung]; link temp=testa; int i=0; for (i=0; i<lung; i++) { a[lung-i]=temp; temp=temp->next; } for (i=0; i<lung; i++) { testa=a[lung-i]; testa=testa->next; } } ti allego anche i files list.c e list.h |
|
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
Hmm... molto strano, col mio Dev-C++ 4.9.3.8 compila bene.
Credo sia un problema di opzioni del compilatore, guarda bene.
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
![]() |
![]() |
![]() |
#7 | |
Senior Member
Iscritto dal: Sep 2002
Città: Celano (AQ) Segno_Zodiacale: Leone Ascendente: Cammello Segni_Particolari: Quello
Messaggi: 9571
|
Quote:
|
|
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Sep 2002
Città: Celano (AQ) Segno_Zodiacale: Leone Ascendente: Cammello Segni_Particolari: Quello
Messaggi: 9571
|
AGGIORNAMENTO:
ho scoperto che se invece di mettere #include "list.h" metto #include "list.c" il programma viene compilato correttamente!!! Ma come mai?? Non bisogna includere il file con estensione .h cioè quello contenente i prototipi delle funzioni??? |
![]() |
![]() |
![]() |
#9 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Devi compilare anche list.c... Fai un progetto con Dev-C++ ed includi nel progetto il file dove c'è il main ed il file list.c...ed il gioco è fatto...
|
![]() |
![]() |
![]() |
#10 |
Senior Member
Iscritto dal: Nov 2001
Messaggi: 1205
|
Infatti. Secondo me andava tutto bene...il fatto che sostituendo "list.h" con "list.c" compilasse mi fa pensare che non fosse stato creato un progetto.
|
![]() |
![]() |
![]() |
#11 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Infatti gli da un errore di linker...e non di compilazione... Quindi il .h lo include...
|
![]() |
![]() |
![]() |
#12 |
Senior Member
Iscritto dal: Sep 2002
Città: Celano (AQ) Segno_Zodiacale: Leone Ascendente: Cammello Segni_Particolari: Quello
Messaggi: 9571
|
siccome non l'ho mai fatto, quando seleziono nuovo progetto cosa devo scegliere ( ci sono tante cose, windows application, dll ecc.)?
|
![]() |
![]() |
![]() |
#13 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Console Application...
|
![]() |
![]() |
![]() |
#14 | |
Senior Member
Iscritto dal: Sep 2002
Città: Celano (AQ) Segno_Zodiacale: Leone Ascendente: Cammello Segni_Particolari: Quello
Messaggi: 9571
|
Quote:
ma per chi non ha in IDE (io uso compilare da riga di comando con lcc) come risolve il problema? |
|
![]() |
![]() |
![]() |
#15 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Non so l'interfaccia di lcc, ma con il gcc ci sono diverse possibilità:
gcc main.c list.c -o mio.exe oppure gcc list.c -c list.o gcc main.c list.o -o mio.exe |
![]() |
![]() |
![]() |
#16 | |
Senior Member
Iscritto dal: Sep 2002
Città: Celano (AQ) Segno_Zodiacale: Leone Ascendente: Cammello Segni_Particolari: Quello
Messaggi: 9571
|
Quote:
|
|
![]() |
![]() |
![]() |
#17 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
No...list.h... Si incldono sempre e solo gli header...
list.c viene compilato da solo e linkato all'eseguibile... |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 16:33.