ldcf.net
当前位置:首页 >> 有定义:int A[12]={1,2,3,4,5,6,7,8,9,10,11,12},*... >>

有定义:int A[12]={1,2,3,4,5,6,7,8,9,10,11,12},*...

数值4也就是这个定义数组的第四个数 也就是a[3] char c='a',而'a'代表了ASCLL码,表示的是十进制的97,那么c=97。 而'd'也表示的是ASCLL码,意味着十进制的100。 所以'd' - c=100 - 97=3 所以就有了4的表达式为a ['d' - c ]

不是“数值4的表达式 是a['d'-c]” 而是“a['d'-c] 表达式的值是数值4” 因为'd'-c='d'-'a'=3 a[3]的值就是4。

int (*ptr)[3]=a这句,将a的首地址赋值给了ptr,ptr表示的是指向一个含有三个Int的数组的指针, *((ptr+1)[2])等价于*((ptr+1)+2),等价于*(ptr+3),这表示从数组a的首地址向后移动3个单位,每个单位为一个含有3个Int的数组,所以一共向后移动了...

根据FOR循环,得知: p[0]=&a[0],p[1]=&a[3],p[2]=&a[6],p[3]=&a[9]; *(*(p+1)+2)=a[5]=6;*(p+1)即是数组p[1];内容是数组a的第三单元的地址。 *p[2]=a[6]=7;

#include void main() { int a[]={1,2,3,4,5,6,7,8,9,10,11,12};//对数组a初始化 int *p[3];//定义指针数组,每一个元素都是指针 int m;//定义变量m for(m=0;m

#include void fun(int *p){int i=0,j=0,k=0;;printf("请输入下标:");scanf("%d",&j);if (j>=0 && j

int (*p)[4];表明p是行指针,即p指向二维数组中的一行。 p=a;这一句表示p指向a[0],也就是指向a数组第0行的第0个元素(a[0][0])的地址。 p[2]表示p指向a数组的第二行,即指向a[2]行,也就指向a[2][0]的地址。 p[2]+3表示行指针指向a数组的第二行...

这是一个指针求值的问题,答案应该是A 答案分析如下: 首先,所有的逗号运算符,是从左向右进行的,其值为右边结果计算的值 A p+=2,*(p++) 先计算p+=2 再计算*p 最后计算p++ 表达式的值在第二步计算确定的 为p[2] = a[2] = 3。表达式计算完毕之...

*p=a,数组名表示地址,该句话的意思就是p=&a[0],p+=2表示p=&a[2]; 接下来我们看看* ++的优先级,两个优先级是一样的,属于右结合。*(p++)首先计算p++,由于++在后面,所以*(P++)相当于计算*p,然后p++;所以A和C相同,至于D ++*p表示++(*p)...

答案是B,3. int a[][4]的写法就是表示,第一维大小没限制,但是第二维数组大小就是4,也就是int a[][4]={{1,2,3,4},{5,6,7,8},{9,10}},明显是3.

网站首页 | 网站地图
All rights reserved Powered by www.ldcf.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com