dígitos da função recursiva de um inteiro decimal positivo na ordem inversa c ++
Eu tenho uma atribuição para escrever uma função recursiva que grava os dígitos de um inteiro positivo na ordem inversa. Meu problema é que a função não exibe o reverso corretamente. Eu sei que eu deveria usar% ou 10 quando exibir o número e / de 10 quando na chamada recursiva, bem como o caso base é suposto ser <10. Aqui está o meu código.
#include <iostream>
using namespace std;
int reverse(int,int);
int main()
{
int number;
int n;
cout << " Enter number to reverse." << endl;
cin >> number;
cout << reverse(number % 10,0);
return 0;
}//end main
int reverse(int number,int n)
{
if(n < 10)
{
return n;
}
else
{
return reverse(number/10,n);
}
}// end reverse