请写出以下代码的打印结果,主要目的是考察 a 和&a 的区别。
#include void main( void ) {
int a[5]={1,2,3,4,5}; int *ptr=(int *)(&a+1);
printf(“%d,%d”,*(a+1),*(ptr-1));
return; }
输出结果:2,5。
注意:数组名 a 可以作数组的首地址,而&a 是数组的指针。思考,将原式的 int *ptr=(int *)(&a+1); 改为 int *ptr=(int *)(a+1);时输出结果将是什么呢?
喵呜刷题:让学习像火箭一样快速,快来微信扫码,体验免费刷题服务,开启你的学习加速器!