Das Handling mit Strings ist nicht völlig unproblematisch, wenn man nicht
bedenkt, daß es sich um char
-Arrays handelt. Ein Vergleich, ob
zwie Strings identisch sind, läßt sich nicht einfach mit dem
Vergleichsoperato druchführen:
if (txt1 == txt2) // Strings sind zwar gleich, aber es
char* txt1 = "Das ist ein String";
char* txt2 = "Das ist ein String";
char* txt3 = "Das ist noch ein String;
{ // werden nur Adressen verglichen
cout << "Beide Strings gleich"; // ==> Ungleichheit
}
if (*txt1 == *txt3) // Strings sind zwar nicht gleich, aber es
{ // wird nur das erste Zeichen verglichen
cout << "Beide Strings gleich"; // ==> Gleichheit
}
Man muß also eine Funktion definieren, die beim Vergleichen alle Positionen vergleicht. Dies ist nicht ganz einfach, da z. B. unterschiedliche Längen beachtet werden müssen.