Mehrere Quellcodedateien - modulare Programmierung
-
Hi Leute,
neues Problem. Ich möchte das Programm in 3 Module unterteilen. main.c , funk.c und funk.h
Leider klappt es garnicht, ich bräuchte dringend Hilfe.EDIT/
/C/main17.c C:\I funk.h: No such file or directory.
I:\C\main17.c In functionmain': 9 I:\\C\\main17.c
FELD' undeclared (first use in this function)
(Each undeclared identifier is reported only once
for each function it appears in.)
15 I:\C\main17.c [Warning] implicit declaration of functioneingabe' 16 I:\\C\\main17.c [Warning] implicit declaration of function
sort'
17 I:\C\main17.c [Warning] implicit declaration of functionausgabe' 9 I:\\C\\main17.c [Warning] unused variable
text'
C:\Makefile.win [Build Error] [I:/C/main17.o] Error 1main.c
#include <string.h> #include <stdio.h> #include <stdlib.h> #include "funk.h" int main (void) { char abbruch=0,*text[FELD]; int anzahl=0, count=0; do { anzahl = eingabe(text); sort(text, anzahl); ausgabe(text, anzahl); for(count=0; count < anzahl; count++) free(text[count]); scanf("%c", &abbruch); }while(abbruch=='\n'); getchar(); return 0; }
funk.c - hier habe ich alle Funktionen drin
#include "funk.h" int eingabe(char* text[FELD]) { int count=0, anzahl=0; char cpy[FEL], abbruch=0; do{ fgets(cpy, FELD, stdin); text[count] = (char *)malloc(sizeof(char)*strlen(cpy)+1); strcpy(text[count], cpy); count++; if(text[count] == NULL) scanf("%c", &abbruch); }while(abbruch=='\n'); anzahl = count; return anzahl; } void sort(char *text[FELD],int anzahl) { int x, tausche=0, count=0; char *cpy; do { tausche = 0; for (count = 0; count < anzahl-1; ++count) { x = strcmp(text[count], text[count+1]); if (x > 0) { tausche = 1; cpy = text[count]; text[count] = text[count+1]; text[count+1] = cpy; } } } while (tausche != 0); } void ausgabe(char* text[FELD], int anzahl) { int count=0; for (count = 0; count < anzahl; ++count) { printf("%s ", text[count]); } }
funk.h hier die Konstanten und Prototypen
#define FEL 100 #define FELD 1000 int eingabe(char* text[FELD]); void sort(char *text[FELD],int anzahl); void ausgabe(char* text[FELD], int anzahl);
-
könnt closen. hat sich erledigt
-
Aber uns mal zu posten, wie sich das erledigt hat,
wäre auch gar nich mal so daneben...
-
Die Fehlermeldung beschreibt es ja, er konnte .h nicht finden. Ich hatte unter Optionen, in der Projektdatei, die Pfadangabe vernachlässigt. Schon war das Problem gelöst.
-
dancer schrieb:
Die Fehlermeldung beschreibt es ja, er konnte .h nicht finden.
Schämst Du Dich jetzt wenigstens ein Bißchen?
Sack voll Code hinklatschen wegen garnix?
-
schämen... nett formuliert
aber nein, tue ich nicht.
-
dancer schrieb:
schämen... nett formuliert aber nein, tue ich nicht.
OK, dann muß sich für Dich wohl auch keiner mehr aus dem Fenster lehnen.
Board vollklatschen beim ersten Compilergemotze ist wie Sabrina86, die von uns die Hausaufgaben für ihren bösen Prof gemacht haben will
-
Spiel dich mal nicht so auf^^, wer klatscht hier denn jetzt das Board voll mit sinnfreien Äußerungen?
pointercrash() schrieb:
die von uns die Hausaufgaben für ihren bösen Prof gemacht haben will
Hast du mir den gesamten Code geschrieben? Ich glaube nicht
Nach 6h rumhacken auf die Tastatur, ist man nicht mehr ganz frisch. Dann passiert sowas. Aber richtig schön ists erst, wenn man noch solche Kommentare lesen darf. So Schluss, muss noch ein Rohr verlegen.
-
dancer schrieb:
So Schluss, muss noch ein Rohr verlegen.
Wie? Jetzt im Winter? Bei dem Wetter?
-
... unglaublich, oder?