Re: [问题] 一个reference的问题

楼主: XX124188 (kinger)   2014-08-28 19:50:17
※ 引述《XX124188 (kinger)》之铭言:
: ※ 引述《kdok123 (小天)》之铭言:
: : int a[5]={1,2,3,4,5};
: : int *ptr=(int *)(&a+1);
: : printf("%d",*(ptr-1));
: : 输出是5
: : int a[5]={1,2,3,4,5};
: : int *ptr=(int *)(a+1);
: : printf("%d",*(ptr-1));
: : 输出是1
: : 我能理解第二个例子,可是第一个例子是什么意思?
: : 我尝试把a和&a都印了出来,发现两个位址是一样的
: : a+1和&a+1分别和a及&a的位址差距,一个是4一个是20(4*5)
: : 可以理解是跟矩阵大小有关
: : 但还是不理解&a+1的意思...
: : 有人可以帮我解说吗??
: : 感谢!
: 请问为什么会前进5个int@@?
喔喔懂了~谢谢^_^ 一直以为应该只前进一个整数4byte
作者: diabloevagto (wi)   2014-08-28 23:19:00
其实你可以再搞懂怎样推文

Links booklink

Contact Us: admin [ a t ] ucptt.com