已知数组定义: int a[3][5]; 下面正确的语句是:
A: int *p=a;
B: int *p=a[0][0];
C: int (*p)[3]=a;
D: int (*p)[5]=a+1;
A: int *p=a;
B: int *p=a[0][0];
C: int (*p)[3]=a;
D: int (*p)[5]=a+1;
举一反三
- 若有:int a[3][5]; 如何定义指针变量p,使其能够指向数组a的第一行(行指针),正确的定义是()。 A: int *p = a[1]; B: int *p = &a[1][0]; C: int *p[5] = a + 1; D: int (*p)[5] = a + 1;
- int a[ ][3]={1,2,3,4,5,6}; int *p=&a[0[0]; 上述代码的第2行可以使用下列哪些选项替换? A: int *p=a[0]; B: int *p=a; C: int *p=*a; D: int *p=**a;
- 若有定义和语句:int a[2][3]={0}, (*p)[3]; p=a;,则p+1表示数组________
- 若有定义:int a[4][3],*p;下面不正确的赋值语句是_____。 A: p=a+1 B: p=a[0] C: p=&a[1][1] D: p=*(a+2)
- 若有定义int a[5],*p=a;,则对a数组元素的不正确引用是( )。 A: int a[5],*p;p=&a; B: int a[5],*p;p=a; C: int a[5];int *p=a; D: int a[5];int *p1,*p2=a;*p1=*p2;