tigger
Semiprofi
Thread Starter
- Mitglied seit
- 01.02.2004
- Beiträge
- 8.496
Hallo Leute,
ich soll als Übung zu Pointern und CStrings einen Eigenbau der Funktionen strcmp, strcat und strcpy erstellen, also das Vergleichen, Zusammenfügen und Kopieren von Strings.
Ich hab jetzt auch was programmiert, es wird auch sauber compiliert und gestartet, doch leider bringt mir Visual Studio eine Fehlermeldung, dass mein Projekt beendet werden musste und ich seh den Fehler nicht
Hier mal der Quellcode zu strcmp, die andern 2 hab ich noch nicht
danke schonmal für jede Hilfe
ich soll als Übung zu Pointern und CStrings einen Eigenbau der Funktionen strcmp, strcat und strcpy erstellen, also das Vergleichen, Zusammenfügen und Kopieren von Strings.
Ich hab jetzt auch was programmiert, es wird auch sauber compiliert und gestartet, doch leider bringt mir Visual Studio eine Fehlermeldung, dass mein Projekt beendet werden musste und ich seh den Fehler nicht
Hier mal der Quellcode zu strcmp, die andern 2 hab ich noch nicht
danke schonmal für jede Hilfe
Code:
#include <iostream>
#include <string>
using namespace std;
bool my_strcmp(const char * ziel, const char * quelle)
{
bool ergebnis = false;
int counter = 0;
//Wenn beide Zeiger auf den leeren String zeigen, sind sie gleich
if (*(ziel) == '\0' || *(quelle) == '\0')
{
return true;
}
else
{
do
{ //Prefung, ob die Zeichen an der Steller counter bei beiden
//Zeigern gleich sind
ergebnis = (*(ziel + counter) == *(quelle + counter));
counter++;
}
//bricht ab, wenn einer der Zeiger auf das Ende der Zeichenkette zeigt
//oder wenn der Vergleich bei Ergebnis falsch zurueckliefert
while (*(ziel) != '\0' || *(quelle) != '\0' || ergebnis == false);
}
}
int main()
{
const char * quelle = "test";
const char * ziel = "test";
if (my_strcmp(ziel, quelle))
{
cout << "Die beiden Strings sind gleich" << endl;
}
else
{
cout << "Die beiden Strings sind ungleich" << endl;
}
return 0;
}