Hallo Martin,
der entscheidende Punkt ist, dass NET und damit auch C# ganz genau auf die verwendeten Typen achtet. Deshalb ist schon Dein erstes Beispiel falsch:
Du mischst hier einen char und einen string:
| Zitat: |
| Fehler CS0029: Der Typ string kann nicht implizit in char konvertiert werden. |
Genauso sind char und int nicht direkt kompatibel:
C#-Quelltext
1:
| buchstabe=buchstabe+4; |
| Zitat: |
| Fehler CS0031: Der Konstantenwert 4 kann nicht in char konvertiert werden. |
Stattdessen musst Du explizit die gewünschte Konvertierung angeben, z.B. so:
C#-Quelltext
1: 2:
| char buchstabe = 'c'; buchstabe = (char)((int)buchstabe + 4); |
| Zitat: |
| Jeder Buchstabe hat einen festen Zahlenwert und genau diesen möchte ich ändern: |
Bitte gewöhne Dir typengenaues Arbeiten an; dann kommst Du normalerweise nicht auf solche Wünsche. Ein char ist ein Zeichen, und mit dessen Zahlenwert ist selten zu rechnen. (Natürlich gibt es solche Situation, dafür gibt es passende Umwege; hier geht es um den Grundsatz.)
Jürgen