int display(int **src) {
printf("%d", src[0][1]);
}
you can not do that because the compiler doesn't know the dimensions (rows and columns), in other words: C doesn't use introspection.
Instead:
int display(int src[][2]) {
printf("%d", src[0][1]);
}
or if you prefer
int display(int (*src)[2]) {
printf("%d", src[0][1]);
}
Note that you don't need to specify the first dimension, C is able to calculate the position based on the offset: (sizeof(int) * cols)
Also, you promised to return
something from the function, if you don't want to return
a value use:
void display(int (*src)[2]) {
Finally, as pointed out by @Scheff in comments, your original array haves 2 columns, receiving 3 will break the indexing in the receiver.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…