Wörter zählen
-
tzername: schrieb:
breakpoints mit ner anderen Tastenkombination setzt.
na toll
-
Was? Ist es zu schwer für dich nachzuschauen, wie man nen Breakpoint setzt? Irgenwann musst du debuggen, wenn du was größeres programmieren willst.
-
ja aber jetz noch nicht. ich wende nur befehle an die ich auch in der schule gelernt habe.
und jetzt zurück zu meinem Syntax-Problem..
Kann jmd den "Fehler" ausbessern?
mfg
-
Wie Syntaxproblem, gibts ne compilerfehlermeldung?
-
for(x=1;x<=Eingabe.Length;x++)[C++Fehler] Unit1.cpp(77): Member function must be called or its address taken.
-
Hi,
hast nicht gesagt wo das Problem GENAU lag daher hab ich einfach das hier gebastelt müsstest du allerdings anpassenint nWordCounter = 1; char *strDeinText = "Hallo Welt, aber diesmal mit einigen Leerzeichen mehr . . ."; char *strTemp; for ( int i = 0; i < strlen( strDeinText ); i++ ) { if ( strDeinText[i] == ' ' ) { nWordCounter++; //printf( "\n" ); } else { //printf( "%c", strDeinText[i] ); } } //printf( "\n\n--> %d\n\n", nWordCounter );
-
Wenn überhaupt Eingabe.length**()**

-
Blubbbbb schrieb:
Wenn überhaupt Eingabe.length**()**

danke^^ hätt ich auch selber draufkommen können
naja jetzt tut sich gar nix wenn ich auf enter drück bei edit nach der wörter eingabe...
-
bitte helfen .. is wichtig

-
LoSt schrieb:
bitte helfen .. is wichtig

Hat wieder keiner gesehen, ist aber ganz einfach. Dein Index 'x' läuft von 1 bis Eingabe.Length() - korrekt ist 0 bis Eingabe.Length()-1. Also in Zeile 11:
for( x=0; x<Eingabe.Length(); x++ )Angenommen je zwei Wörter sind durch genau ein Leerzeichen getrennt und vor dem ersten Wort und hinter dem letzten Wort befindet sich kein Leerzeichen, so ist die Anzahl der Wörter = Anzahl der Leerzeichen plus 1. Also ändere Zeile 9 noch nach:
counter=1;.. und Zeile 18 müsste doch eher
Label1->Caption=IntToStr(counter);heißen - oder?
Tipp: verwende ausschließlich lokale Variablen.
Eine sicher Alternative ist:
istringstream buf( Eingabe ); // oder ähnlich counter = distance( istream_iterator< string >( buf ), istream_iterator< string >() );erfordert includes: <sstream>, <iterator> und <algorithm>.
Die Alternative ist auch robust gegenüber führenden und endenden Leerzeichen und mehr als ein Leerzeichen zwischen zwei Wörtern.Gruß
Werner
-
löschn
-
{ if(Key==13) { int x,counter; String Eingabe; counter=1; Eingabe=Edit2->Text; for(x=0;x<Eingabe.Length();x++) { if (Eingabe[x]==' ') { counter++; } Label4->Visible=true; Label4->Caption=IntToStr(counter); } } }so hab ich es jetzt und bekomm ne "fehlermeldung":
http://www.directupload.net/images/070304/temp/945s4OXb.jpgkan mir wer helfen, damit das prog jetzt endlich funzt? danke
EDIT:
ok mit
[cpp] for(x=1;x<Eingabe.Length();x++)[/cpp]
geht es!!
danke
-
Hallo,
Fragen bezüglich des BCB solltest du auch in dem dortigen Forum stellen. Dort hätte man gewußt, dass die Zählung der AnsiStrings mit 1 beginnt.