> Richtig ist es natürlich, Strings und Zeichen immer als unsigned char
> zu definieren, es gibt ja keine negativen Buchstaben.
Nein. Richtig ist, sie als char zu definieren, denn das ist der Typ, der
dafür gedacht ist. Ob der ein Vorzeichen hat oder nicht, kann dir dabei
vollkommen egal sein, solange du es nur für Zeichen einsetzen willst.
Das Problem von Thomas kam dadurch zustande, daß er direkt einen
Integerwert reingeschrieben hat und kein Zeichen. Da spielt das
Vorzeichen natürlich eine Rolle.
> Blöd ist nur, daß bei der Erfindung von C nur 7Bit Zeichen üblich waren
> und deshalb die Stringfunktionen alle vom Typ char sind.
??
> Eine saubere Lösung gibt es leider nicht.
Doch. char für Zeichen nehmen, signed/unsigned char, wenn man es als
integer verwenden möchte.