I wrote this program that is supposed to sort NxN array. It gets compiled but doesn't work because the pointer type is incompatible.
I just need help with the pointers as argument. I get incompatible pointer type warning for both functions swap and dblArraySort. Any idea why is that ?
thanks in advance !
#include <stdio.h>
#include <stdlib.h>
void
swap(int **a, int **b)
{
    int temp;
    temp = **a;
    **a = **b;
    **b = temp;
}
void
dblArraySort(int **dblArray, int arrLen)
{
    int chkIndex;
    int i, j, k;
    for (i = 0; i < arrLen; i++) {
        if ((i + 1) % 2 == 0) {
            for (j = 0; j < arrLen; j++) {
                chkIndex = dblArray[i][j];
                for (k = 1; k + j < arrLen; k++)
                    if (chkIndex < dblArray[i][k + j])
                        swap(&dblArray[i][j], &dblArray[i][k + j]);
                    else
                        continue;
            }
        } else {
            for (j = 0; j < arrLen; j++) {
                chkIndex = dblArray[i][j];
                for (k = 1; k + j < arrLen; k++)
                    if (chkIndex >= dblArray[i][k + j])
                        swap(&dblArray[i][j], &dblArray[i][k + j]);
                    else
                        continue;
            }
        }
    }
}
int
main()
{
    unsigned int arrayLength;
    printf("Provide array size: \n");
    scanf("%d", &arrayLength);
    int doubleArray[arrayLength][arrayLength];
    for (int i = 0; i < arrayLength; i++) {
        for (int j = 0; j < arrayLength; j++) {
            scanf("%d", &doubleArray[i][j]);
        }
    }
    dblArraySort(doubleArray, arrayLength);
    for (int i = 0; i < arrayLength; i++) {
        for (int j = 0; j < arrayLength; j++) {
            printf("%d ", doubleArray[i][j]);
        }
        printf("\n");
    }
    return 0;
}
I tried the code mentioned above
 
     
    