你給我個指針數組,我用二級指針變量接收它:創建通用的二維數組處理函數

下面的案例也實現了通用的二維數組處理函數,能處理任意的M行N列的數組。

在調用函數之前,先用指針數組存儲每行的首元素地址,再將指針數組名當成二級指針傳遞給函數。

#include <stdio.h>
#include <stdlib.h>

void print(int **p,int m,int n)
{
	int i,j;		
	
	for(i=0;i<m;i++)	
	{
		for(j=0;j<n;j++)
		{
			printf("%d ",p[i][j]);
		}
		printf("\n");
	}
	
} 
int main()
{
	int A[3][3]={3,2,1,6,5,4,8,7,9};
	int m=3,n=3,i;
	
	int *p[m];//指針數組	
	
	for(i=0;i<m;i++) 
	{
		p[i]=A[i];//存儲每行的首元素地址 
	}

	print(p,m,n) ;
	
	return 0;
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章