c语言程序设计快速入门第九章 - 图文 联系客服

发布时间 : 星期二 文章c语言程序设计快速入门第九章 - 图文更新完毕开始阅读341c754ae518964bce847c00

第9章指针9.3.3 利用指针变量访问二维数组目标要求2、将一个二维数组作为一个数组元素均为一维数组的一维数组。如果我们有以下定义:即:int x[4][3];则:x[0][0] x[0][1] x[0][2]x=x[0]=&x[0][0]x[1][0] x[1][1] x[1][2]x[1]=&x[1][0]x[2][0] x[2][1] x[2][2]x[2]=&x[2][0]可以看成:int x[4];x[3][0] x[3][1] x[3][2]x[0]: x[0][0] x[0][1] x[0][2]x[3]=&x[3][0]x[1]: x[1][0] x[1][1] x[1][2]x[2]: x[2][0] x[2][1] x[2][2]x[3]: x[3][0] x[3][1] x[3][2]讲课提纲讲课内容课后作业退出第9章指针9.3.3 利用指针变量访问二维数组目标要求综上所述,设已经定义一个二维数组x,对该二维数组的访问,除了可以使用通常的下标法(即使用x[i][j]的形式访问二维数组)外,我们可以采用以下方法:1、将二维数组看成一个一维数组,先将指针变量p指向数组x的首地址(即p=&x[0][0];)然后利用p++顺序访问。2、数组名x代表整个数组的首地址,而对于应该二维数组来讲,x[i]表示第i行的首地址,因此,表达式“x[i]+j”也是一个地址,它是数组元素x[i][j]在内存中的首地址。另外请注意,x[i]也可以写成*(x+i)。这样,表达式“x[i]+j”,也可以写成“*(x+i)+j”两者完全等价。讲课提纲讲课内容课后作业退出第9章指针9.3.3 利用指针变量访问二维数组.3、利用数组每行的首地址,结合指针变量来访问数组。即,当执目标要求行了“p=x[i];”后,指针变量p即指向了数组x第i行的第一个元素x[i][0],因此,执行了“p++;”后,即可指向x[i][1];这样结合for循环,就可以顺序访问其后的数组元素。讲课提纲另外值得一提的是,数组x的行地址还有其他一些表示法,其中,“x+i”、“*(x+i)”、“x[i]”和“&x[i]”均表讲课内容示i行数组元素x[i][0]的首地址,即:&x[i][0]=x[i]=&x[i]=x+i=*(x+i)课后作业请注意,以上表示法完全一样。退出第9章指针9.4 指针与字符串9.4.1目标要求字符串的一般概念1.字符串的定义:例如:字符串数组的初始化:#include (1)char string[]=”computer”;void main()(2)char string[9]=”computer”; {’c’,’o’,’m’,’p’,’u’,’t’,’e’,’r’};(3)char string[]={(4)char string[8]={’c’,’o’,’m’,’p’,’u’,’t’,’e’,’r’};char x[10];(5)char string[]={ ”computer”};gets(x);(6)char string[9]={ ”computer”};puts(x);}退出讲课提纲讲课内容课后作业