首页 > 试题广场 >

阅读以下程序,分析下面语句序列中每一个字符“*”和“&”的含

[问答题]

阅读以下程序,分析下面语句序列中每一个字符“*”和“&”的含义,并写出输出结果。

#include <iostream>
using namespace std;
int main()
{
int a=10, b=20;
  int *p = &a, *q = &b;
  *p = *p * *q;
  int & ra = a;
  ra=a;
  int * & rt = q;
  *rt = 30;
  cout<<"a="<<a<<"\nb="<<b<<"\n*p="<<*p<<"\n*q="<<*q
       <<"\nra="<<ra<<"\n*rt="<<*rt<<endl;
}

推荐

字符“*”和“&”的意义见程序中添加的注释。

#include <iostream>
using namespace std;
int main()
{
int a=10, b=20;
int *p = &a, *q = &b;        //“*”是指针类型说明符,“&”是取址运算符
*p = *p * *q;        //第1、2、4个“*”是间址访问符,第3个“*”算术乘运算符
int & ra = a;        //“&”是引用说明符
ra=a;
int * & rt = q;        //“*”是指针类型说明符,“&”是引用说明符
*rt = 30;            //“*”是间址访问符
//输出语句中的“*”是间址访问符
cout<<"a="<<a<<"\nb="<<b<<"\n*p="<<*p<<"\n*q="<<*q
<<"\nra="<<ra<<"\n*rt="<<*rt<<endl;
}

程序输出结果为:

a=200

b=30

*p=200

*q=30

ra=200

*rt=30

发表于 2018-05-07 11:07:13 回复(0)