设有以下程序: #include<iostream> using namespace std; int main() { int a,b,k:4,m=6,*p1=&k,*p2=&m; a=p1==&m;

admin2010-03-29  25

问题 设有以下程序:
   #include<iostream>
   using namespace std;
   int main()
   {
      int  a,b,k:4,m=6,*p1=&k,*p2=&m;
      a=p1==&m;
      b=(*p1)/(*p2)+7;
      cout<<a<<b<<end1;
      return 0;
   }
   执行该程序后,a的值为【  】,b的值为【  】。

选项

答案0 7

解析 本题考核的知识点是有关指针的运算。程序中定义了两个指针变量p1和p2,并通过赋初值让它们分别指向了变量k和m。语句“a=p1==&m;”中先执行关系运算符“p1==&m”,显然是0(假),然后把0赋值给a。接着执行语句“b=(*p1)/(*p2)+7”,此处*p1的值就是k的值4,*p2的值就是m的值6,即把“4/6+7”的结果赋给b,b的值为7。
转载请注明原文地址:https://kaotiyun.com/show/cxjp777K
0

最新回复(0)