![]() |
![]() |
|
![]() |
![]() |
|
Programmierung Rat & Tat für Programmierer |
![]() |
|
Themen-Optionen | Ansicht |
![]() |
#1 |
Inventar
![]() Registriert seit: 24.01.2001
Beiträge: 5.107
|
![]() http://www.pri.univie.ac.at/~itep/w...hue/hue05a.html
Naja ich hab schon wieder Schwierigkeiten beim lösen eines dieser eprog Uni-Beispiele Ich hab mich auf Bsp8 konzentriert. Das Bsp8 hört sich zwar einfach an aber damit hab ich auch schon Probleme. Ich bitte um eure Hilfe! Code:
<include>iostream.h char replace(char par1, char par2) { .. ... ... } int main(){ char a[100]; char b[100]; char kette[100]; for (int i=0; i<=100; i++) cin>>kette[i]; replace() ... ... } ![]() Ich hab keine Ahnung und Vorstellung wie ich das Problem weiter angehn soll. ![]() |
![]() |
![]() |
![]() |
#2 |
Inventar
![]() Registriert seit: 08.04.2001
Beiträge: 3.101
|
![]() Link?
|
![]() |
![]() |
![]() |
#3 |
Inventar
![]() Registriert seit: 24.01.2001
Beiträge: 5.107
|
![]() |
![]() |
![]() |
![]() |
#4 |
Inventar
![]() Registriert seit: 24.01.2001
Beiträge: 5.631
|
![]() Also gut:
Mehrere Fehler haben sich da gezeigt: 1) ein include (Preprocessor-) Statement muss so aussehen: Code:
#include <header.h> (=Suche im Includepfad) oder #include "header.h" (=Suche im aktuellen Verzeichnis beginnen) 2) Wenn Zeichenketten zur Übergabe verlangt sind, muss eine Funktion so aussehen: Code:
int my_string_replace (char *search_string, char *replace_string) { 3) Der Aufruf in Deinem Programm muss so aussehen: Code:
my_string_replace("Ein","Mehr"); Siehe -> for (int i=0; i<=100; i++) Das muss for (int i=0; i<=99; i++) oder for (int i=0; i<100; i++) lauten. 5) Um kette[100] als globale Zeichenkette verwenden zu können, muss die Variable außerhalb jeglicher Funktion deklariert werden, sowie beim Zugriff in anderen Quelltext-Dateien als main.cpp mittels extern char kette[100]; definiert werden. Code:
char kette[100]; int main (void) { Kikakater |
![]() |
![]() |
![]() |
#5 |
Großmeister
![]() |
![]() ergänzend noch eine naive Frage an Groovy:
warum setzt du nicht die klasse "string" mit ihren methoden "find" und "replace" ein. ![]() das sind keine funktionen aus externen bibliotheken! http://www.cpp-entwicklung.de/cpplin...00000000000000 grüße maxb |
![]() |
![]() |
![]() |
#6 | |
Inventar
![]() Registriert seit: 24.01.2001
Beiträge: 5.107
|
![]() Zitat:
![]() Naja gestern wars schon ganz schön spät... Vielen Dank Leute! Werds weiterhin versuchen! |
|
![]() |
![]() |
![]() |
#7 |
Inventar
![]() Registriert seit: 24.01.2001
Beiträge: 5.631
|
![]() Ich glaube kaum, daß Klassen zur Lösung herangezogen werden sollen.
Es soll einfach die globale Zeichenkette um die Differenz der beiden Parameterzeichenketten zusammen- oder auseinandergeschoben werden am Ende (=Länge) der Suchzeichenkette innerhalb der globalen Zeichenkette. Noch Ein Einzeller ........^ (<-- hier ein 'r' einfügen, vorher "Meh" ersetzen) Die Differenz der Zeichenketten "Ein" und "Mehr" ist +1 - sprich die (globale) Zeichenkette muss um ein Zeichen an Stellen wo der Suchstring gefunden wird (Stelle + suchstringlaenge) auseinandergeschoben werden. |
![]() |
![]() |
![]() |
#8 |
Inventar
![]() Registriert seit: 24.01.2001
Beiträge: 5.631
|
![]() und noch eines ...
Es heißt zwar C++, aber hier sind C Fähigkeiten gefragt. Die Tutoren wollen Indexprogrammierung sehen und Filterung des Zeichens '\0' und nicht die Verwendung von Klassen. Das Ganze dient der Stärkung der programmiertechnischen Fähigkeiten und ist außerdem ein Beitrag zu "Programmhygiene", da bei Stringverkettungen mittels Stringklassen sehr viel mehr Resourcen wie Speicher und Zeit verbraucht werden. |
![]() |
![]() |
![]() |
#9 | |
Inventar
![]() Registriert seit: 24.01.2001
Beiträge: 5.107
|
![]() Zitat:
![]() Nicht einmal das versteh ich... ![]() edit: hab's schon gefunden es sind Zeiger oder? Mit dem Stoff sind wir aber noch nicht so weit. Dank dir trotzdem für die zahlreichen Beiträge. |
|
![]() |
![]() |
![]() |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
|
|