に10進数に16進数の文字列に変換します。は、私はC++の10進数(整数)に16進数の文字列を変換すると、次の方法で試してみましたC++
std::wstringstream SS;
SS << std::dec << reinterpret_cast<LONG>(L"0xBAD") << endl;
しかし、それは2989
代わり-425771592
を返しました。
しかし、以下のように使用すると、正常に動作し、2989
が期待通りになります。
std::wstringstream SS;
SS << std::dec << 0xBAD << endl;
は、しかし、私は、入力文字列にしたいと出力として2989
、0xBAD
などの代わりに、整数入力を取得します。たとえば、"0xBAD"
を入力して整数にキャストし、10進数に変換したいとします。
ありがとうございます。
質問は何ですか?あなたは働く方法を持っています。 – NathanOliver
@ NathanOliver正しく更新しました。 – GTAVLover
可能な複製:https://stackoverflow.com/questions/1070497/c-convert-hex-string-to-signed-integer –