MrMorpheus
Grünschnabel
Hi Zusammen,
habe leider mal wieder ein Problem, welches mir Kopfzerbrechen bereitet. Eigentlich geht es nur darum ein Textfile, in dem sich mehrere Zeilen ( pro Zeile nur ein Wort) befinden, in ein Array zu speichern und dieses Array dann an eine Funktion zu übergeben.
Hier erst einmal mein Ansatz:
Beim compelieren erhalte ich den Fehler: "Type error in argument 1 to 'askFilter'; found 'char [50] *' expected 'char'." Das Problem hier liegt wahrscheinlich daran, dass ich nicht weis wie ich das Array übergeben darf.
Hoffe ihr hab nen Tipp =)
euer MrMorpheus
habe leider mal wieder ein Problem, welches mir Kopfzerbrechen bereitet. Eigentlich geht es nur darum ein Textfile, in dem sich mehrere Zeilen ( pro Zeile nur ein Wort) befinden, in ein Array zu speichern und dieses Array dann an eine Funktion zu übergeben.
Hier erst einmal mein Ansatz:
C:
#include <stdio.h>
#include <stdlib.h>
#include <string.h> // für strcpy()
int askFilter(char filter, int filterc, char line[100], char adon[5]) {
int i;
for(i = 0; i <= filterc; i++) {
printf("%d/%d> %s",i,filterc,filter[i]);
}
return 0;
}
int main(int argc, char *argv[]) {
/* Filter einlesen*/
FILE *fs;
char fline[50]; // Wert des Filters
int p = 0; // Anzahl der Zeilen
int a = 0;
int fbin = 0; // Filter Schalter
fs = fopen("filter.txt","r");
char cont[200][50]; // Filter Speicher [id][text]
if( fs != NULL ) {
while((fscanf(fs,"%s\n",fline)) != EOF ) { p++; } // Anzahl der Zeilen im Filter ermitteln
a = p;
fclose(fs);
char cont[p][100];
if(p > 0) { // Wenn elemente im Filter
fbin = 1; // Filter aktiviren
fs = fopen("filter.txt","r");
printf("%d Einträge gefunden\n\n",p);
p = 0; // Zähler zurücksetzen
while((fscanf(fs,"%s\n",fline)) != EOF ) { // Speichern der Werte im Filter - Array
strcpy(cont[p++],fline); // Speichert leider nichts
//printf("%s\n",fline);
}
fclose(fs);
}
}
if(fbin)
askFilter(cont,a,"foo","foo");
return EXIT_SUCCESS;
}
Hoffe ihr hab nen Tipp =)
euer MrMorpheus