二位数组作为形参,目前仅知道两种形式,一种直接采用二维数组,一种是用二维指针。以下是做的一个简单的实例。
大家帮我看看,在实际应用中两者有和优缺点。当然,有更好的方式更好了。
以下均应用在字符串数组中
void array_test1(char **pArray,int row,int col)
{
char ptr[10] = {0};
for(int i=0;i<cnt;i++)
{
for(int j=0;j<lnt;j++)
{
ptr[j] = *((char*)test + col*i + j);//二维指针只表示二维数组头指针,获取值不太方便
}
}
}
void array_test(char cArray[][10],int row)
{
char ptr[10] = {0};
for(int i=0;i<row;i++)
{
ptr[i] = cArray[i];//二维数组必须给出列,赋值简单
}
}
voi main(void)
{
char str[][10]={"第一","第二","第三"};
array_test(str,3);
array_test1(str,3,10);
}
转载于:https://www.cnblogs.com/lixingle/archive/2012/11/21/3313010.html