kobinieren von .txt einlesen und zeichen zählen
-
es soll eine textdatei geöffnet werden und dann die anzahl zeichen analysiert werden. das mit dem dateiöffnen und so klappt alles schon mal perfekt. zum zeichen zählen verwende ich die strlen funktion. aber irgendwie gelingt mir der übergang zwischen texdatei lesen und dann die zeichen zählen nicht. ich habe nachdem text einlesen
char string[] = "String"; size_t laenge; laenge = strlen(string); printf("Es hat %d Zeichen\n",string, laenge);
brauche ich da noch was spezielles zum übergang von einlesen und zählen?
ps. ich probier mal ein bisschen rum. ich hoffe ich bring das auch ohne hilfe hin
-
Willst du die Zeichen in der Datei zählen oder die Anzahl der Zeichen eines jeden Wortes in der Datei ?
Wenn es nur um die Zeichen geht schau dir fgetc() an. Wenn es um die Worte geht, schau dir auch fgetc() an.
-
es geht um die zeichen.
fgetc werd ich mir anschauen
-
also um die Größe der Datei herauszufinden und somit ja auch die anzahl der zeichen benutzt den kleinen Code.
stream = fopen(..); fseek(stream, 0L, SEEK_END); laenge = ftell(stream); fclose(stream);
MfG schirrmie
-
"need help bei nem anfänger konsolen programm"
wie schon so oft im forum erwähnt: sinnvolle topics wählen.
-
besser?
-
marcH schrieb:
besser?
Besser, aber nocht nicht ganz toll. Lass das "need help" noch weg. Der Deutsch-Englisch-Mix wirkt dümmlich, und dass du Hilfe brauchst, dürfte offensichtlich sein, sonst hättest du ja nicht gefragt.
-
etwa so?
-
Vorbildlich
-
schirrmie schrieb:
also um die Größe der Datei herauszufinden und somit ja auch die anzahl der zeichen benutzt den kleinen Code.
stream = fopen(..); fseek(stream, 0L, SEEK_END); laenge = ftell(stream); fclose(stream);
MfG schirrmie
Man sollte aber bedenken, dass undruckbare Zeichen, wie '\t', '\n' und ' ' auch dabei sind.
-
ja da muss man noch aufpassen. naja \t usw. sollte es nachher dann eigentlich nicht mitzählen.
-
marcH schrieb:
printf("Es hat %d Zeichen\n",string, laenge);
ich weiß ja nicht ob ich der einzige bin, dem das auffällt, aber soviel ich da sehe, stimmt die Anzahl der Platzhalter nicht mit den letzendlich eingesetzten Variablen überein.
vielleicht bin ich auch einfach zu dämlich und das ist gar kein fehler...