首页 > 编程语言 > 详细

程序猿之---C语言细节30(数组和指针操作测试题,你能全答对吗??)

时间:2014-11-24 17:12:12      阅读:265      评论:0      收藏:0      [点我收藏+]

主要内容:数组和指针操作测试

#include <stdio.h>

int main()
{
    int a[5] = {1,2,3,4,5};
    /* 你能答对最后一条语句的输出吗?*/
    int *ptr1 = (int *)(&a+1);
    int *ptr2 = (int *)((int)a+1);

    printf("&a       = %d\n",(&a));
    printf("(&a+1)   = %d\n",(&a+1));
    printf("a        = %d\n",a);
    printf("(a+1)    = %d\n",(a+1));
    printf("(int)a+1 = %d\n",(int)a+1);

    printf("ptr1 = %d,*ptr2 = %d",ptr1[-1],*ptr2); // 输出是多少?
    
    return 0;
}





输出:

    printf("(&a+1)   = %d\n",(&a+1));//加1是加了整个数组的大小
    printf("(int)a+1 = %d\n",(int)a+1);//这里加1是当成整数加1
bubuko.com,布布扣

程序猿之---C语言细节30(数组和指针操作测试题,你能全答对吗??)

原文:http://blog.csdn.net/human_evolution/article/details/41447327

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!