Ich bin ein Anfänger-Mittelstufe-Arduino-Codierer, der versucht, 2-stellige Dezimalzahlen in Hexadezimalzahlen für eines meiner Projekte zu konvertieren. Der Code, den ich gemacht scheint zu funktionieren, aber es scheint, viel, viel länger als es sein sollte:Umwandlung von 2-stelligen Dezimalzahlen in Hexadezimalzahlen
int decToHex(int ones, int tens) {
int result = 0x00;
if (tens == 0) {
switch (ones) {
case 0:
result = 0x00;
break;
case 1:
...
case 9:
result = 0x09;
break;
}
} else {
switch (tens) {
case 1:
switch (ones) {
case 0:
result = 0x0A;
break;
case 1:
...
case 9:
result = 0x13;
break;
}
break;
case 2:
...
case 9:
switch (ones) {
...
}
break;
}
}
return result;
}
Jede Hilfe dieses Codes Verkürzung sehr geschätzt werden würde.
Wenn Sie Code arbeiten und Sie Vorschläge, wie es verbessert werden kann, dann [codereview.se] ist ein geeigneter Ort für Ihre Frage. – kaylum
'return ten * 10 + one;' sollte es tun. – potrzebie
Mögliche Duplikate von [Dezimal zu Hexadezimal-Konvertierung C++ integrierte Funktion] (http://stackoverflow.com/questions/20034297/decimal-to-hex-conversion-c-built-in-function) – Confuse