第20讲 5348指针的方式输出二维数组任意元素1、指针的方式输出二维数组任一行任一列元素的值定义一个二维数组a[3][4] a是一个行指针,16个字节,每一行有四个元素printf(%d,sizeof(*a));二维数组的指针就是一个指向一维数组的指针,元素是确定的int(*p)[4]=a;通过如下的方式输出二维数组任一行任一列元素的值printf(%d,%d,%d,%d,i,j,p[i][j],*(*(p+i)+j));
第19讲 5347指针遍历输出二维数组的值有一个3×4的二维数组,要求用指向元素的指针变量输出二维数组各元素的值。二维数组的元素是整型的,它相当于整型变量,可以用int*型指针变量指向它二维数组的元素在内存中是按行顺序存放的,即存放完序号为0的行中的全部元素后,接着存放序号为1的行中的全部元素,依此类推因此可以用一个指向整型元素的指针变量,依次指向各个元素线性的方式循环二维数组:嵌套for循环
第17讲 5339指向元素指针与指向数组的指针 指向元素的指针与指向数组的指针若有定义int(*p)[3];则定义了一个名为p的指针变量,表示p是一个指针变量,它可以指向每行有三个整数(即int型)元素的二维数组p是指向一维数组的指针变量。这句话的理解是首先(*p)[3]是一个指向一维数组的指针变量,意思就是p这个指针是指向一个含有3个元素的数组的,那么p指针每一次加1就相当于把p中存的地址加
第5讲 638二维数组与指针数组区别二维数组二维数组存储空间固定字符指针数组相当于可变列长的二维数组charname[5][9]={“gain”,“much”,“stronger”, “point”,“bye”};指针数组指针数组元素的作用相当于二维数组的行名但指针数组中元素是指针变量二维数组的行名是地址常量char *name[5]={“gain”,“much”,“stronger”, “p
第16讲 5338指针与数组1、指针与数组指向数组元素的指针变量 例 int array[10];int *p; p=&array[0]; //? p=array;或 int*p=&array[0];或int *p=array;数组名是表示数组首地址的地址常量注意:数组名a不代表整个数组,只代表数组首元素的地址。“p=a;”的作用是“把a数组的首元素的地址赋给指针变量p”,而不是“把数组a各元
第18讲 5340-46 指针引用多维数组1、 a是一个行指针。指向一个有四个元素的数组,占16个字节 &a是一个指向二维数组的指针,二维数组有12个元素,占48个字节 *a是一个指向int类型数据的指针。2、对于二维数组a[i][j]等价于*(*(a+i)+j) &a[i][j]等价于*(a+i)+ja[i]等价于*(a+i) &a[i]3、 二维数组名是指向行的,它不能对如下说明的指针变量
#
第8讲 5325指向指针的指针指针变量也是变量,占据一定的内存空间,有地址,因此可以用一个指针指向它,这称为指向指针的指针,或二级指针。函数形式参数,除了数组以外,传递的任何数据,变量,都会新建一个变量接收传入的变量的值。不影响原来的变量,如果是一个数据,传递数据的地址(指针),如果是一个指针,传递指针的地址。db是double类型的变量。运行结果:可以发现main函数的 p的地址和 chan
a[0](a4)int a[5] = { 1 2 3 4 5 } pp=ap2a[0]复习:指向一维数组元素的指针include <>define N 6void main( ){ int a[N]={ 1 3 4 6 7 9 } int temp m=(N-1)2 int p q t p=a q=aN-1 t=am for(
#
违法有害信息,请在下方选择原因提交举报