用模%和除就可以完成。
123 模10 得到3,除10变成12
12 模10 得到2,除10变成1
1 模10 得到1,除10变成0,结束。
// 输入正整数,返回它没个数位上的数字
// 比如12345,返回[5,4,3,2,1]
vector<int> getDigits(int num) {
if (num < 0) {
num = -num;
}
vector<int> digits;
while(num != 0) {
digits.push_back(num % 10);
num /= 10;
}
// 数字12345会返回[5,4,3,2,1]
// 如果需要返回[1,2,3,4,5],可以#include <algorithm>然后调用:
// std::reverse(digits.begin(), digites.end());
return digits;
}