0

0x0000 のような文字列を整数に変換するにはどうすればよいですか??? このコードは機能しません (Func atof は常に 0 を返します)。

String  str = "0xffff";
(unsigned int)atof(str);
4

2 に答える 2

4

C++ に加えて、C および C++ で機能する(またはunsigned の場合) をstd::stoi使用できます。strtolstrtoul

int i = strtol(str, NULL, 0);

最後のパラメーター 0 は、文字列がどのように見えるかに応じて、ベースが 8、10、または 16 になるように自動選択することを意味します。プレフィックスには0x、基数 16 が使用されます。プレフィックスには0、基数 8 が使用されます。その他の 10 進数については、基数 10 が試されます。

于 2013-05-16T06:44:46.683 に答える