-2

私はを持っていて、intそれをに変換したいと思いvector<char>ます。

例えば:

std::vector<char> MyVct;
int i = 2046;

だから私はサイズ4のベクトルが欲しいです:

MyVct[0] = '2';   
MyVct[1] = '0';   
MyVct[2] = '4';   
MyVct[3] = '6';  

どうすれば最も効率的な方法でそれを行うことができますか?

4

2 に答える 2

3

便利な方法の 1 つは、次を使用することstd::to_stringです。

auto s1 = std::to_string(i);
std::vector<char> vec1(s1.begin(), s1.end());
于 2013-01-29T12:19:23.723 に答える
2

これを行う:

if (n == 0) { MyVct.push_back('0'); }

else { for ( ; n; n /= 10) { MyVct.push_back('0' + (n % 10)); } }

std::reverse(MyVct.begin(), MyVct.end());
于 2013-01-29T12:17:40.830 に答える