test

记录一个笔试题,下面哪里会报错

#include <stdio.h>


struct S
{
    int i;
    int *p; 
};

int main()
{
    S s;
    int *p = &s.i;
    p[0] = 3;//i=3,s.p=0;
    p[1] = 4;//i=3,s.p=4

    s.p = p;//i=3,p为i的地址
    s.p[1] = 3;//i=3,p=3
    s.p[0] = 4;//这里段错误,因为s.p是常量3

    return 0;

}

 

posted @ 2020-05-12 17:35  cicero  阅读(95)  评论(0编辑  收藏  举报