Dr. Matthias Grabert Abteilung Angewandte Informationsverarbeitung 15. Mai 2004
Claudia Fischer Blatt 2


Uni Logo



C++ mit Data Mining Anwendungen (SS 2004)


Abgabetermin: 13. Mai 2004

Strings (10 Punkte)

Die Handhabung der C-Strings ist oft etwas schwierig. Deswegen haben sich einige schlaue Köpfe überlegt, für C++ andere Strings zu verwenden. Hierzu soll eine Struktur wie folgt definiert werden:

typedef struct {
char* text;
int length;
}mystring;



Sie sollen ihnen behilflich sein, dies umzusetzen, indem Sie folgende Funktionen implementieren:

make_string
Diese Funktion soll einen C- String übergeben bekommen und daraus eine Struktur String erzeugen.
get_length()
zur Bestimmung der Länge eines Strings
copy()
Mit dieser Funktion soll man einen String kopieren können
reverse()
Mit dieser Funktion soll es möglich sein, einen String zu invertieren, d.h. der erste Buchstabe soll an der letzten Stelle sein etc. Bitte achten Sie auch auf das abschließende Nullbyte !
locate_char()
Diese Funktion soll überprüfen, ob ein bestimmter Buchstabe (der als Argument übergeben wird) im String vorhanden ist. Sollte dies der Fall sein, so soll die Stelle, an der er das erstemal auftritt zurückgegeben werden.
get_char()
Die Funktion soll eine Integer n übergeben bekommen und dann den n-ten Buchstaben zurückliefern. Wenn der String keine n Buchstaben hat, dann soll natürlich eine entsprechende Fehlermeldung ausgegeben werden.
empty()
zur Überprüfung, ob ein String leer ist
print()
Mit dieser Funktion soll es möglich sein, den String auszugeben.
delete_string()
um den Speicherplatz wieder freizugeben

Schreiben Sie außerdem ein main- Programm um alles zu testen.
Das Programm soll ohne die Bibliothek strings.h und ohne Objekte aus der STL implementiert werden !!
Bitte verwenden Sie mindestens einmal eine Referenz.

Achtung: Der String soll beliebig lang sein können !!

Viel Erfolg!



Claudia Fischer 2004-05-15