struct S { int i; int * p;}; main () {S s ; int *p =&s.i ; p[0]=4; p[1]=3; s.p=p; s.p[1]=1;s.p[0]=2struct S { int i; int * p;}; main (){S s ;int *p =&s.i ;p[0]=4;p[1]=3;s.p=p;s.p[1]=1;s.p[0]=2:} 请问程序会在哪一行崩溃?要不然看不懂~@@
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/15 04:14:12
![struct S { int i; int * p;}; main () {S s ; int *p =&s.i ; p[0]=4; p[1]=3; s.p=p; s.p[1]=1;s.p[0]=2struct S { int i; int * p;}; main (){S s ;int *p =&s.i ;p[0]=4;p[1]=3;s.p=p;s.p[1]=1;s.p[0]=2:} 请问程序会在哪一行崩溃?要不然看不懂~@@](/uploads/image/z/3990545-17-5.jpg?t=struct+S+%7B+int+i%3B+int+%2A+p%3B%7D%3B+main+%28%29+%7BS+s+%3B+int+%2Ap+%3D%26s.i+%3B+p%5B0%5D%3D4%3B+p%5B1%5D%3D3%3B+s.p%3Dp%3B+s.p%5B1%5D%3D1%3Bs.p%5B0%5D%3D2struct+S+%7B+int+i%3B+int+%2A+p%3B%7D%3B+main+%28%29%7BS+s+%3Bint+%2Ap+%3D%26s.i+%3Bp%5B0%5D%3D4%3Bp%5B1%5D%3D3%3Bs.p%3Dp%3Bs.p%5B1%5D%3D1%3Bs.p%5B0%5D%3D2%3A%7D+%E8%AF%B7%E9%97%AE%E7%A8%8B%E5%BA%8F%E4%BC%9A%E5%9C%A8%E5%93%AA%E4%B8%80%E8%A1%8C%E5%B4%A9%E6%BA%83%3F%E8%A6%81%E4%B8%8D%E7%84%B6%E7%9C%8B%E4%B8%8D%E6%87%82%7E%40%40)
struct S { int i; int * p;}; main () {S s ; int *p =&s.i ; p[0]=4; p[1]=3; s.p=p; s.p[1]=1;s.p[0]=2struct S { int i; int * p;}; main (){S s ;int *p =&s.i ;p[0]=4;p[1]=3;s.p=p;s.p[1]=1;s.p[0]=2:} 请问程序会在哪一行崩溃?要不然看不懂~@@
struct S { int i; int * p;}; main () {S s ; int *p =&s.i ; p[0]=4; p[1]=3; s.p=p; s.p[1]=1;s.p[0]=2
struct S { int i; int * p;};
main ()
{S s ;
int *p =&s.i ;
p[0]=4;
p[1]=3;
s.p=p;
s.p[1]=1;
s.p[0]=2:
} 请问程序会在哪一行崩溃?要不然看不懂~@@
struct S { int i; int * p;}; main () {S s ; int *p =&s.i ; p[0]=4; p[1]=3; s.p=p; s.p[1]=1;s.p[0]=2struct S { int i; int * p;}; main (){S s ;int *p =&s.i ;p[0]=4;p[1]=3;s.p=p;s.p[1]=1;s.p[0]=2:} 请问程序会在哪一行崩溃?要不然看不懂~@@
程序应该在最后一句崩溃,
struct S { int i; int * p;};
main ()
{S s ;
int *p =&s.i ; //p指针指向s结构体中变量i
p[0]=4; //p[0] = 4;给i赋值4;
p[1]=3; //p[1]指向s.p指针,p指针占用8字节,p[1] =3修改了s.p指 针的低位,所以不会出错.
s.p=p; //s.p = p使s.p指向自身地址
s.p[1]=1; //修改了s.p指针高位的值,s.p指向未知内存
s.p[0]=2://操作s.p指向的内存,程序崩溃
}