[求助]关于C
程序main()
{ int a[10]={1,2,3,4,5,6,7,8,9,0},*p;
p=a;
printf("%x\n",p);
printf("%x\n",p+9);
}
中有两个printf(),如果第一个printf()输出的是194,则第二个printf()输出的是?
----------------解决方案--------------------------------------------------------
这跟你的计算机字长有关
----------------解决方案--------------------------------------------------------
输出的十六进制地址值.
----------------解决方案--------------------------------------------------------
如果int为2,则地址就是194+12(2*9)=1A6
----------------解决方案--------------------------------------------------------
194是十六进制吗?
----------------解决方案--------------------------------------------------------
%x
----------------解决方案--------------------------------------------------------
那怎么是:194+12(2*9)是有什么算法吗?
----------------解决方案--------------------------------------------------------
我直接在十六进制下加的.
----------------解决方案--------------------------------------------------------
回复:(mebol)那怎么是:194+12(2*9)是有什么算法...
2*9=18,用l6进制表示是12----------------解决方案--------------------------------------------------------
哦,蒙蒙懂懂,有简单的算法吗?
我是菜鸟,请包含……
----------------解决方案--------------------------------------------------------