为您找到"

...int a[2][2]={1,2,3,4},(*p)[2];,则在语句p=a;p++;后,**p的值为

"相关结果约100,000,000个

设有定义:int a[2][2]={1,2,3,4},(*p)[2];,则在语句p=a;p++;后,**p...

答案选B p = a;让a指向int a[2][2]的int a[][2];p++让p指向int[][2]的第二个地址,int a[1][2]的地址,所以**p的值是3.

...a[3][2]={1,2,3,4,5,6}, (*p)[2]=a;表达式**(p+2)的值?

(*p)[2]=a表示将p定义为一个指向含2个元素的一维数组的指针变量,那么二维数组就可以看作是一维数组a[3],其中每一个元素都是一个一维数组,a[1]={1,2},a[2]={3,4},a[3]={5,6};则p+2就指向了a[3],*(p+2)是a[3]的首地址,**(p+2)就是a[3]的首元素,即为5。(p+2...

...int a[2][2]={1,2,3,4},*p[3];p[0]=a[1];则*(p[0]+1)表示的数组元素...

为了更好的理解,我们定义一个int *q;q = p[0];这样 *(p[0] + 1)就等价于 *(q +1)了,由于q是int型的指针并指向的a[1]的第0个元素a[1][0], q+1就会指向a[1][0]的下一个元素了,也就是a[1][1].p[0]指向的是a[1][0]的地址,*(p[0]+1)自然指的是a[1][1]应...

int+a[3][2]={{6,5},{4,3},{2,1}},*p=a[1];则*(p+2)的值?

那么,p加2指向的是{2,1}这个一维数组的首地址,而*(p+2)则表示取该地址上的值,即1。因此,*(p+2)的值为1。需要注意的是,题目中的表达式“int+a[3][2]”是错误的,应该是“int a[3][2]”才是正确的语法。根据题目可知,指针p指向a[1],即数组中第2行的首元素,也就是4。(p+...

int a[3][2] = { 1,2,3,4,5,6 }, (*p)[2]; p = a; printf("%d\n",a...

二维数组的首地址是二级指针,二级指针就是指针的指针,意思就是一个指针指向了另一个指针。假如:int **b , *a; b = &a; 所以*b中存放的是指针a指向的地址值, b就是a的地址值。所以这里的**a 和*a就是这个道理。这里*a就是第一行首地址的地址值 二维...

...int a[10]={1,2,3,4,5,6,7,8,9,10},* P=a; 则数值为9的表达式是...

【答案】:B 本题考查指向数组的指针,本题中指针变量P指向数组a,那么*P的值就是1,即表示数组的第一个元素,那么数值为9的表达式就是将指针向后移动8个地址,即P+8指向的是数组元素值为9,所以数值为9的表达式是*(P+8)。

...a[4]={1,2,3,4},*p; p=&a[3]; ,则*--p的值是()。

【答案】:2 解析:矩阵a中存了1、2、3、4,C/C++数组序号从0开始,所以a[3]表示4,指针p表示4所在的位置,则指针--p表示4所在位置的前两位,即2所在的位置,答案为2。

...我已经做好了,但不知道对错,求高手帮忙检查一下,帮忙找一下错的选 ...

3, B a = a + 7; 因有分号所以是语句,不是表达式。a=7+b+c,a++ 是逗号表达式。4,C int a[2][3]={{1},{2},{3,4}}; 少了一维, a[3][3]就对了 6,B int a=b=0; b没定义,不能用来定义a 12,C 这是函数指针的定义方式 13,A 这个简单,不应该出错 15,A fopen...

设C环境下一个int型数据占用2个字节,设int a[4]={1,2,3,4},*p=a...

因为*p=a,*p=a=a[0]=1.这里是该地址的数据、p为指针的地址。p = a = 2000.因为一个int是两字节,p+1=a+1=2002 而*(p+2)= a[2]=3.

...a[]={1,2,3,4,5,6,7,8,9,10,11,12} ,*p=a 则值为3的表达式是?_百度...

答案是 C) p+=2,*p++。关于P+=2指向的是数组的第二个元素,是因为p++操作在p+=2操作之后,它将指针偏移2个元素,也就是p最终指向数组a的第三个元素,即a[2],而*p++表示取出p所指向的元素并且p++,因此最终得到的结果是a[2]=3。单独的p指向的是数组a的第一个元素,即a[0]=1。
1 2 3 4 5 6 7 8 9

相关搜索