У меня есть функция через R cpp, которая инвертирует целое число
#include <Rcpp.h>
using namespace Rcpp;
//' Reverse an integer
//'
//' @param x A single integer.
//' @export
// [[Rcpp::export]]
int reverse_integer(int x) {
int reverse = 0;
while(x != 0){
int remainder = x%10;
reverse = reverse*10 + remainder;
x/=10;
}
return reverse;
}
Это прекрасно работает для чисел без начальных или конечных нулей
reverse_integer(123) == 321
Однако, когда есть нули, они будут удалены, т.е.
reverse_integer(100) == 1
Как лучше всего изменить эту функцию, чтобы я мог работать с ней как целое число, но не теряя нули?