Meine Module wollen nicht so wie ich es gerne hätte...
-
Hallo,
habe ein kleines Progrämmchen geschrieben und versuchte dann einzelne Funktionen in verschiedene Module auszugliedern und da funktioniert dann gar nichts mehr. Funktionen werden nicht gefunden.../*mydir.c*/ #include <stdio.h> #include <io.h> #include <string.h> #include <time.h> #include "datetime.h" int main(int argc, char **argv) { struct _finddata_t entry; int done = 0; long handle; char sSearchDir[32]; struct tm DataInfo; strcpy( sSearchDir, argv[1] ); strcat( sSearchDir, "\\*.*" ); if ((handle = _findfirst (sSearchDir,&entry))!= -1L) { while(!done) { convertDate(entry.time_write,&DataInfo.tm_mday, &DataInfo.tm_mon, &DataInfo.tm_year); //Funktion soll in datetime.c stehen convertTime(entry.time_write,&DataInfo.tm_hour, &DataInfo.tm_min); //Funktion soll in datetime.c stehen printf("%02i.%02i.%4i %02i:%02i %-12i %s\n",DataInfo.tm_mday,DataInfo.tm_mon,DataInfo.tm_year,DataInfo.tm_hour,DataInfo.tm_min, entry.size, entry.name); done = _findnext(handle, &entry); } _findclose(handle); } else {printf("Datei nicht gefunden!");} } /******************************************************************/ /*datetime.h*/ #ifndef __DATETIME_H #define __DATETIME_H #include <time.h> #include <io.h> extern void convertDate(time_t time, int *day, int *month, int *year); extern void convertTime(time_t time, int *hour, int *min); #endif /********************************************************************/ /*datetime.c*/ #include "datetime.h" void convertDate(time_t time, int *day, int *month, int *year) { struct tm zeitdaten; zeitdaten = *localtime(&time); *month = zeitdaten.tm_mon + 1; *day = zeitdaten.tm_mday; *year = zeitdaten.tm_year + 1900; } void convertTime(time_t time, int *hour, int *min) { struct tm zeitdaten; zeitdaten = *localtime(&time); *hour = zeitdaten.tm_hour; *min = zeitdaten.tm_min; }
Wo liegt mein Fehler?
-
Kompiliert einwandfrei, stürzt aber ab...
-
Sach mal ob des ein Compiler oder Linkerfehler Runtimefehler ist und die _genaue_ Fehlermerldung. Dann werden Sie geholfen!
Servus
-
Bekomme folgende Fehlermeldung:
[Linker error] undefined reference to 'convertDate'
[Linker error] undefined reference to 'convertTime'
bekomme einfach keine Kompilation zustande....
-
Wie kompilierst und linkst Du die Dateien denn? (Mit welchem Aufruf?)
-
Ich kompiliere die C Datei mit der Main Funktion mit Dev-C++
-
Die datetime.c hast du deinen Projektdateien aber schon hinzugefügt, oder??
-
Ja, das war der Fehler, habe ohne ein neues Projekt anzulegen neue Module erstellt und einzelne Fragmente ausgelagert. Nun hat es geklappt. Vielen Dank für die Hilfe.
mfg