ich eine hexadezimale Zeichenfolge in eine Dezimalzahl (integer) in C++ und versuchte, mit folgenden Möglichkeiten umwandeln möchten:konvertieren Hexadezimalstring Zahl in C++ Dezimal
std::wstringstream SS;
SS << std::dec << stol(L"0xBAD") << endl;
Aber es kehrte 0
statt 2989
.
std::wstringstream SS;
SS << std::dec << reinterpret_cast<LONG>(L"0xBAD") << endl;
Aber es kehrte -425771592
statt 2989
.
Aber wenn ich es wie unten verwende, funktioniert es gut und gibt 2989
wie erwartet.
std::wstringstream SS;
SS << std::dec << 0xBAD << endl;
Aber ich möchte eine Zeichenfolge eingeben und 2989
als Ausgabe erhalten, statt Integer-Eingang wie 0xBAD
. Zum Beispiel möchte ich "0xBAD"
eingeben und es in Ganzzahl umwandeln und dann in eine Dezimalzahl umwandeln.
Vielen Dank im Voraus.
Also, was ist die Frage? Du hast einen funktionierenden Weg. – NathanOliver
@NathanOliver Ich aktualisierte es richtig. – GTAVLover
Mögliche Duplikate: https://stackoverflow.com/questions/1070497/c-convert-hex-string-to-signed-integer –