I am writing a C ++ program that needs to convert numbers from decimal to binary. Here is my code:
int* convertToBinary(int i, unsigned int n) {
    int ans[10000];
    if (n / 2 != 0) {
        convertToBinary(i + 1, n / 2);
    }
    ans[i] = n / 2;
    return ans;
}
void send_number(int num) {
    
    for (int j = 0; j < 16; j++) {
        printf("%d", convertToBinary(0, num)[j]);
    }   
}
In this case, the num variable takes only natural values from 0 to 65535.
The main function is send_number().
On execution I get the 'Segmentation fault (core dumped)' error. I can't figure out why this is happening.
PS: I am C++ beginner. I don't know English well and use google translator
 
     
    