Using a single pointer
In this method, we must typecast the 2D array when passing to function.
In this method, we must typecast the 2D array when passing to function.
reference geekforgeeks
#include <stdio.h>void print(int *arr, int m, int n){ int i, j; for (i = 0; i < m; i++) for (j = 0; j < n; j++) printf("%d ", *((arr+i*n) + j));}int main(){ int arr[][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}; int m = 3, n = 3; print((int *)arr, m, n);// notice (int*) here return 0;}
in c a printer is a pointer in parameter so it doesnt matter whether its single or double
|
No comments:
Post a Comment