ldcf.net
当前位置:首页 >> mAin() {int A[10]={1,2,3,4,5,6,7,8,9,0},*p; p=A... >>

mAin() {int A[10]={1,2,3,4,5,6,7,8,9,0},*p; p=A...

我运行出来结果是10 环境是VS2008 int a[]={1,2,3,4,5,6,7,8,9,0},*p; p=a; printf("%d",*p+9);

p是int *型指针。 所以 p+n(n为整数) p实际的地址值为((int)p)+sizeof(int)*n 这里 输出的也就是 0x194+sizeof(int)*9 注意,这里的194是16进制的。因为是0x输出。 如果是sizeof(int) =4 也就是32/64位系统,那么输出为 0x194+4*9=0x194+0x24=0x...

这里是输出地址的16进制值 假如1个整数是2个字节,则p+9 比p多了2*9 =18,为16进制的12H,加上194H,就是1A6H,答案是D 如果1个整数占4个字节,则p+9 比p多了4*9 = 36,为16进制的24H,加上194H,得到1B8,题目中没有答案

输出结果是 10 *p+9=a[0]+9=1+9=10

可能初学者没懂题的意思,这道题main()函数逻辑很清晰,关键在于f()函数我一开始看时也没懂什么意思,他主要是把数组第3到第6元素乘以2其余的不变(相信你们会for循环),然后再循环输出得到1,2,6,8,10,12,7,8,9,10,的结果。

输出为: 1/r/n3/r/n6/r/n6/r/n7/r/n 您的反斜杠打反了,应该是\,您打成了/

结果是两个地址值(以十六进制显示出来),其中第一个是a[0]的地址,因为*p=a[0], p=&a[0], 即指针p指向的是数组a的首地址(即a[0]的地址)。望采纳

0 输出P所指的第9个数(从0开始),P指向的是A数组,所以第9个是'0'

遍历数组,遇到负数跳出循环。否则求和。 此题即s=1+2+3=6,到-4跳出循环

这个函数的功能是将输入的指针所指向的后一个变量赋给指针指向的变量。第一个for循环,i为2满足条件,将a[3]赋值给a[2],数组变为{10,9,7,7,6,5,4,3,2,1},同理第二次循环数组变为{10,7,7,7,6,5,4,3,2,1},第三次为{7,7,7,7,6,5,4,3,2,1},运行...

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