设有定义int m=2,n=5,*p=&n;则语句“m=*p;”的结果是().

设有定义int m=2,n=5,*p=&n;则语句“m=*p;”的结果是().

题目
设有定义int m=2,n=5,*p=&n;则语句“m=*p;”的结果是().
A) 指针p指向m
B) 变量m的值变为5
C) 变量n的值变为2
D) 指针p指向m,同时变量m的值变为5
B和D有什么区别啊?D错哪了?
答案
一步步分析:
*p = &n; 为定义指针p,同时指向n的地址;
m = *p; 为对m重新赋值,此时*p为对地址&n取值,即n的值5,所以m值变为5;
但此语句不是指向操作,本质上说可以是int = int操作,所以p的指向还是n的地址.
举一反三
已知函数f(x)=x,g(x)=alnx,a∈R.若曲线y=f(x)与曲线y=g(x)相交,且在交点处有相同的切线,求a的值和该切线方程.
我想写一篇关于奥巴马的演讲的文章,写哪一篇好呢?为什么好
奥巴马演讲不用看稿子.为什么中国领导演讲要看?
想找英语初三上学期的首字母填空练习……
英语翻译
最新试题
热门考点

超级试练试题库

© 2017-2019 超级试练试题库,All Rights Reserved.