Umwandlung von string oder char zu int

Ich bin Total verwirrt

string temp = "73";
int tempc0 = Convert.ToInt32(temp[0]);
int tempc1 = Convert.ToInt32(temp[1]);
MessageBox.Show(tempc0 + "*" + tempc1 + "=" + tempc0*tempc1);

Ich würde erwarten: 7*3=21

Aber dann erhalte ich: 55*51=2805

  • Konvertieren der chars wieder auf string und Sie erhalten Ihre "gewünschte" Ergebnis: int tempc0 = Convert.ToInt32(temp[0].ToString()); int tempc1 = Convert.ToInt32(temp[1].ToString()); Einem char numerische implizit-und diese Zahl ist nicht mit der int-Darstellung des substring.
  • Der Schnellste Weg zur Umwandlung Ziffer-Zeichen in die int-Werte ist die Verwendung temp[0] - '0'. Siehe meine Antwort für ein gutes Beispiel HIERFÜR.
InformationsquelleAutor fishmong3r | 2013-03-14
Schreibe einen Kommentar