my program is working corectly but I get a warning : guys.
I have allocated memory for a double pointer and I have populated it with some values.(1)
After that I created a function that populates the ints with 0
Than I have made a pointer to that function and crated another function that uses that pointer as an argument

I ran the program and it was working
But the problem was that I was getting a warning

"passing argument 1 of 'cheama_transforma0' makes pointer from integer without a cast"

This is my code:

        #include <stdio.h>
    #include <stdlib.h>
    
    
    void printeaza_pointer(int **cacat){
        for(int i = 0; i < 3; i++){
            for(int j = 0; j < 3; j++){
                printf("%d\n",cacat[i][j]);
            }
            putchar('\n');
        }
    }
    int transforma_in0(int **cacat){
        for(int i = 0; i < 3; i++){
            for(int j = 0; j < 3; j++){
                cacat[i][j] = 0;
            }
        }
        return 0;
    }
    void cheama_transforma0(int (*p)(int **pointer)){
    
    }
    int main()
    {
        int (*p)(int **cacat);
        int **pointer_d = (int **)malloc(sizeof(int*)*3);
        for(int i = 0; i < 3; i++){
            pointer_d[i] = (int *)malloc(sizeof(int)*3);
        }
    
        for(int i = 0; i < 3; i++){
            for(int j = 0; j < 3; j++){
                pointer_d[i][j] = 1;
            }
        }
        p = transforma_in0;
        printeaza_pointer(pointer_d);
        cheama_transforma0(p(pointer_d));
        printeaza_pointer(pointer_d);
    
        return 0;
    }



