黑马程序员技术交流社区

标题: 为什么第一个输出的是0?? [打印本页]

作者: 贺超智    时间: 2015-7-3 20:14
标题: 为什么第一个输出的是0??
static void test1()
{
        struct node {
                int a;
                char b;
                char c;       
                int d;
                int e;  
        };
        struct node s = { 3, 4, 5, 6 };
        //struct node s = { .a = 3, .c = 4, .e = 5, .d = 6 };
        struct node *p = &s;

        printf("%d\n", *((int*)p + 3));
        printf("%d\n", ((int*)p + 4)[-1]);
}

作者: 丁铭检    时间: 2015-7-5 09:06
想问一下(int*)是什么个意思?
作者: 李旭飞    时间: 2015-7-5 09:15
结构体变量的首地址指向的是第一个元素地址吗?
作者: 贺超智    时间: 2015-7-9 18:32
没有人知道这个问题吗????大神
作者: 毛琳东    时间: 2015-7-9 20:10
(int*)用到这里是神马意思啊?
作者: iOSNC    时间: 2015-7-10 18:28
路过看看!还没学到这!
作者: 小蜗牛0519    时间: 2015-7-10 19:22
看看 还没学到这
作者: 贺超智    时间: 2015-8-29 21:16
毛琳东 发表于 2015-7-9 20:10
(int*)用到这里是神马意思啊?

你也不知道么??
作者: 来自星星    时间: 2015-8-30 09:42
刚入黑马,还没学到结构体




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2