当前位置 :
【指向二维数组的指针如何定义?简略如下:intarrayA[2][3]={{1,2,3},{11,22,33}};intarrayB[2][5]={{5,6,7,8,9},{55,66,77,88,99}};现在我想定义一个变量array,当条件A成立时,array指向arrayA,当条件B成立时,array指】
1人问答
问题描述:

指向二维数组的指针如何定义?

简略如下:

intarrayA[2][3]={{1,2,3},{11,22,33}};

intarrayB[2][5]={{5,6,7,8,9},{55,66,77,88,99}};

现在我想定义一个变量array,当条件A成立时,array指向arrayA,当条件B成立时,array指向arrayB.

刚才定义成双指针int**array形势,编译错误.

我的想法是:

if(A条件成立){

array=arrayA;

}else{

array=arrayB;

}

然后对array[i][j]进行操作.

该如何定义好?

李寅东回答:
  方案一:   intarrayA[2][3]={{1,2,3},{11,22,33}};   intarrayB[2][5]={{5,6,7,8,9},{55,66,77,88,99}};   int*array=NULL;   if(A条件成立)   {   array=&arrayA[0][0];   }   else   {   array=&arrayB[0][0];   }   方案二:   这种方式是定义指向二维数组的行的数组指针,列必须相同,行可以不同,所以这里要定义两个数组指针变量!   intarrayA[2][3]={{1,2,3},{11,22,33}};   intarrayB[2][5]={{5,6,7,8,9},{55,66,77,88,99}};   int(*array1)[3]=NULL;   int(*array2)[5]=NULL;   if(A条件成立)   {   array1=arrayA;   }   else   {   array2=arrayB;   }   如果你定义的两数组列一样,即:   intarrayA[2][5]={{1,2,3},{11,22,33}};   intarrayB[2][5]={{5,6,7,8,9},{55,66,77,88,99}};   那么就可以:   int(*array)[5]=NULL;   if(A条件成立)   {   array=arrayA;   }   else   {   array=arrayB;   }
最新更新
热门其它
PC端 | 移动端 | mip端
字典翻译(zidianfy.com)汇总了汉语字典,新华字典,成语字典,组词,词语,在线查字典,中文字典,英汉字典,在线字典,康熙字典等等,是学生查询学习资料的好帮手,是老师教学的好助手。
声明:本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
电话:  邮箱:
Copyright©2009-2021 字典翻译 zidianfy.com 版权所有 闽ICP备2022014709号-7
lyric 頭條新聞