Die Suche ergab 26 Treffer

von do6dm
Mi Feb 08, 2012 2:32 pm
Forum: C / C++
Thema: Problem mit strstr
Antworten: 24
Zugriffe: 19090

Re: Problem mit strstr

Sorry, da hab ich mich vertan. Bei a bekomm ich natürlich anane als Ausgabe.
Wie immer, vielen Dank für deine Hilfe!
Neu schreiben kann ich jetzt aus Zeitgründen grad nicht. Hab morgen schon die Klausur.

Mal ne allgemeine Frage, was ist ein postfix und ein präfix argument, bzw. der Unterschied?
von do6dm
Mi Feb 08, 2012 1:18 pm
Forum: C / C++
Thema: Problem mit strstr
Antworten: 24
Zugriffe: 19090

Re: Problem mit strstr

Funktionieren tut es. Wenn ich für needle z.B. a, aa, z eingebe gibt es den Nullzeiger, ebenso wenn needle länger als haystack ist. Geb ich für needle ana ein, gibt es anane aus, geb ich ane ein, gibts ane aus. Es gibt keinen Unterschied zwischen l und j.^^ Hier mal das ganze Programm mit ohne l. :)...
von do6dm
Mi Feb 08, 2012 1:16 am
Forum: C / C++
Thema: Problem mit strstr
Antworten: 24
Zugriffe: 19090

Re: Problem mit strstr

So, 3 Liter Kaffee später... Kein goto, kein Cast, nur eine Schleife und lesbar ists auch noch :) char * my_strstr(char *haystack, char *needle){ int hL = strlen(haystack); int i=0, j=0, l=0; if( strlen(haystack) >= strlen(needle) ){ while(needle[j]){ if(haystack[i+l] == needle[j]){ l++; j++; contin...
von do6dm
Di Feb 07, 2012 10:36 pm
Forum: C / C++
Thema: Problem mit strstr
Antworten: 24
Zugriffe: 19090

Re: Problem mit strstr

Wie wär's damit? if( strlen(haystack) >= strlen(needle) ) Was liest sich einfacher? Das ist natürlich schon übersichtlicher. Das zeug mit dem Cast hab ich aus ner alten Prüfungsaufgabe, die lautet: In dem Lösungsbeispiel für Übungsaufgabe 19 wird in my_strstr() eine goto-Anweisung genutzt. Wozu wir...
von do6dm
Di Feb 07, 2012 7:56 pm
Forum: C / C++
Thema: Problem mit strstr
Antworten: 24
Zugriffe: 19090

Re: Problem mit strstr

m und l brauch ich, weil ich i ja nicht erhöhen darf, sonst würde ich ja wenn der Vergleich nicht geklappt hätte, nicht an der nächsten Stelle von haystack weitersuchen, sondern um soviele Stellen weiter, wie ich i in meiner if Abfrage erhöht habe. m brauche ich allerdings nicht fällt mir da so auf,...
von do6dm
Di Feb 07, 2012 6:50 pm
Forum: C / C++
Thema: Problem mit strstr
Antworten: 24
Zugriffe: 19090

Re: Problem mit strstr

Ich getrau es mich ja kaum zu Posten... aber ohne Goto schaff ichs nicht. char * my_strstr(char *haystack, char *needle){ int i=0, j=0, l, m; if((int)(strlen(haystack)-strlen(needle)) >=0){ //erschöpfendes testen again: l=0; m=0; while(haystack[i]){ while(needle[j+m]){ if(haystack[i+l] == needle[j+m...
von do6dm
Di Feb 07, 2012 6:28 pm
Forum: C / C++
Thema: Problem mit strstr
Antworten: 24
Zugriffe: 19090

Re: Problem mit strstr

Ich weiß nicht wie ich das machen soll, geschweige wie ich das programmieren soll.
von do6dm
Di Feb 07, 2012 5:38 pm
Forum: C / C++
Thema: Problem mit strstr
Antworten: 24
Zugriffe: 19090

Re: Problem mit strstr

Dann such ich jetzt weiterhin nach dem a, wenn meine darauffolgenden Vergleiche fehlschlagen, gehe ich in "Banane" eins weiter und schau wieder ob da ein a ist, wenn nicht, wieder in "Banane" eins weiter usw. Falls ich wieder ein a finde, führe ich meinen vergleich wieder aus. Und dann kontrollier i...
von do6dm
Di Feb 07, 2012 5:17 pm
Forum: C / C++
Thema: Problem mit strstr
Antworten: 24
Zugriffe: 19090

Re: Problem mit strstr

Oje, das würd mit meiner Version nicht gehen, weil ich schon längst nen Nullzeiger hätte, bis ich überhaupt bei "ane" in Banane angekommen wär.^^
Ich müsste also wenn ich keine übereinstimmung gefunden habe, im String weiter nach dem nächsten "a" suchen und dann wieder Zeichen für Zeichen vergleichen?
von do6dm
Di Feb 07, 2012 5:04 pm
Forum: C / C++
Thema: Problem mit strstr
Antworten: 24
Zugriffe: 19090

Re: Problem mit strstr

Es funktioniert auch garnicht sehe ich gerade.. wenn ich nach a123 in aa123aa suche kommt der gute Nullzeiger :( Also: Ich würde gerne "ana" in "Banane" suchen. Dazu muss ich doch erst in "Banane" suchen, bis mal das erste Zeichen von meinem Suchwort, also a, vorkommt. (Wäre Zeichen Nummer 2) Dann m...