0
我的三分球已经一个小疑问,请帮我..指针运算(指向数组)
void main()
{
int x[10],*px=x,*py;
int i;
py = &x[5], i = py - (px);
cout << "\nThe value of px=x is:" << (int)px << "\n";
cout << "x[0]\t" << (int)x << "\n";
cout << "x[5]\t" << (int)&x[5] << "\n";
cout << "\nThe value of i=py-px is\n";
cout << i;
}
在上面的程序,你得到的“我”为一体的的差异值整数相当于数组(内存)除以2(10/2 = 5)。为什么它不仅仅是差异即10?
在此先感谢!
听起来。你能解释为什么你会期望结果是10吗? – 2013-02-19 15:57:17
好吧,假设你得到x [5]的内存整数eqv为'-24',x [0]为'-34'..那么px-py结果不是-24 + 34 = 10? – vpp 2013-02-19 16:05:32