C语言,若有说明: int *p1, *p2, m=5,n; 以下是正确赋值语句的选项是
若有说明:int*p1,*p2,m=5,n;以下是正确赋值语句的选项是(A)p1=&m;p2=&p1;(B)p1=&m;p2=&n;*p1=*p2;(C)p1=&m;p2...
若有说明: int *p1,*p2, m=5,n; 以下是正确赋值语句的选项是
(A) p1=&m;p2=&p1;(B)p1=&m;p2=&n; *p1= *p2;
(C) p1=&m;p2=p1; (D) p1=&m; *p2 = *p1 ; 展开
(A) p1=&m;p2=&p1;(B)p1=&m;p2=&n; *p1= *p2;
(C) p1=&m;p2=p1; (D) p1=&m; *p2 = *p1 ; 展开
展开全部
正确答案是ABCD.
这些赋值语句都是对的。只是每个赋值的意义不同而已。你没有说你想要的赋值是什么。
p1=&m; //指针P1指向m.
p2=&p1; //指针P2指向 指针p1的地址。
p2=&n; //指针P2指向n.
*p1= *p2; //把p2地址里面的值赋给P1地址里面。
p2=p1; //P2指向P1.
上面这些赋值语句都不会报错,但是真正里面值是多少,就不知道了,因为*P1, *P2, n都没有初始化,有些系统会自动初始化一个值,如cccch什么的,有些直接是里面原来 的值,对你来说,可能是乱码。
这些赋值语句都是对的。只是每个赋值的意义不同而已。你没有说你想要的赋值是什么。
p1=&m; //指针P1指向m.
p2=&p1; //指针P2指向 指针p1的地址。
p2=&n; //指针P2指向n.
*p1= *p2; //把p2地址里面的值赋给P1地址里面。
p2=p1; //P2指向P1.
上面这些赋值语句都不会报错,但是真正里面值是多少,就不知道了,因为*P1, *P2, n都没有初始化,有些系统会自动初始化一个值,如cccch什么的,有些直接是里面原来 的值,对你来说,可能是乱码。
展开全部
A.p2=&p1,p2不是双指针
B,p2=&n,n还没有赋值
C,正确
D,*p2=*p1;原来p2还没初始化,即没有分配内存
应该这样:p2=new int[1];*p2=*p1;
希望对你能有所帮助。
B,p2=&n,n还没有赋值
C,正确
D,*p2=*p1;原来p2还没初始化,即没有分配内存
应该这样:p2=new int[1];*p2=*p1;
希望对你能有所帮助。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
b, c是肯定正确的答案。
关于:D,
桐儿7MS吁8 解释的很好。
我一开始还犯嘀咕。
D的问题是 p2是int指针,没有初始化,也就是没有指向任何实际的int变量地址。
关于:D,
桐儿7MS吁8 解释的很好。
我一开始还犯嘀咕。
D的问题是 p2是int指针,没有初始化,也就是没有指向任何实际的int变量地址。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
B、C、D是对的。
(A)、p2 = &p1; // 类型不匹配
(A)、p2 = &p1; // 类型不匹配
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询