C examples for Pointer:Array Pointer
Functions for 2d arrays with pointer
#include <stdio.h> #define ROWS 3/* w w w . j av a 2 s .com*/ #define COLS 4 void sum_rows(int ar[][COLS], int rows); void sum_cols(int [][COLS], int ); // ok to omit names int sum2d(int (*ar)[COLS], int rows); // another syntax int main(void){ int junk[ROWS][COLS] = { {2,4,6,8}, {3,5,7,9}, {12,14,16,18} }; sum_rows(junk, ROWS); sum_cols(junk, ROWS); printf("Sum of all elements = %d\n", sum2d(junk, ROWS)); return 0; } void sum_rows(int ar[][COLS], int rows) { int r; int c; int tot; for (r = 0; r < rows; r++) { tot = 0; for (c = 0; c < COLS; c++) tot += ar[r][c]; printf("row %d: sum = %d\n", r, tot); } } void sum_cols(int ar[][COLS], int rows) { int r; int c; int tot; for (c = 0; c < COLS; c++) { tot = 0; for (r = 0; r < rows; r++) tot += ar[r][c]; printf("col %d: sum = %d\n", c, tot); } } int sum2d(int ar[][COLS], int rows) { int r; int c; int tot = 0; for (r = 0; r < rows; r++) for (c = 0; c < COLS; c++) tot += ar[r][c]; return tot; }