Ich bin neu in der Programmierung und ich muss den Code schreiben, der den ASCII-Wert eines Eingabezeichens drucken wird. Gibt es eine andere Möglichkeit, die 52 (26 für Kleinbuchstaben und 26 für die oberen) if-else
Aussagen oder 52 switch-cases
zu reduzieren?C++: Wie bedingte Anweisungen zu reduzieren
Antwort
Da es nicht klar ist, was Sie versuchen zu tun, ist Ihre Frage nicht sehr gut geschrieben. Ich denke jedoch, dass Sie einen Blick auf typecasting werfen müssen.
diese Aussage Versuchen Sie, die Zeichen an den entsprechenden ASCII-Wert zu konvertieren:
int output = (int)inputCharacter;
Ja, schreibe einfach den Wert dieses Zeichens.
(int)ch;
Beachten Sie, dass Sie benötigen entsprechende Code zu schreiben, je nachdem, ob Sie Unicode verwenden, und auch je nachdem, welche Methode Sie drucken (in der Regel am besten, ein wenig Code enthalten).
Sie können einfach ein char als int ausgeben, um den ASCII-Wert zu erhalten, und ein int als char, um das entsprechende Zeichen zu erhalten. Siehe This
Whoops bekam das rückwärts. –
Verwenden Sie nicht nur Links, fassen Sie deren Inhalt zusammen, da sie gelöscht oder beschädigt werden könnten. –
Okay, Sie können nicht wirklich einfacher als das Zeichen als ein Int und umgekehrt –
Sie werfen den char
als int
oder einem anderen numerischen Typ kann. Zum Beispiel
(int) 'A'
werden bis 65.
'65' nur mit Ascii, gibt es andere Zeichencodierung als [EBCDIC] (https://en.wikipedia.org/wiki/ EBCDIC) mit unterschiedlichem Wert. – Jarod42
Eine Lösung für dieses konkrete Problem sehen [diese Antwort] (http://stackoverflow.com/a/5030086/1051764) bewerten. – TerraPass
Danke @TerraPass es funktioniert :) –
@FirstStep Entschuldigung für die Verwirrung, ich habe meine Frage aktualisiert –