在C++种,关于指针的这两种表示有什么区别:double * a和double ** a?两个**是什么意思呢?

 我来答
Chock9898
高粉答主

2020-01-20 · 关注我不会让你失望
知道答主
回答量:85
采纳率:100%
帮助的人:1.6万
展开全部

1、double * a;意思是a指向一个double变量的地址。

2、double **a;意思是a指向一个地址,而这个地址指向一个double变量。

计算机科学中,指针(Pointer)为编程语言中的一个对象,利用地址,它的值直接指向(points to)存在电脑存储器中另一个地方的值。

扩展资料:

C++的工作原理:生成程序是指将源码(C++语句)转换成一个可以运行的应用程序的过程。如果程序的编写是正确的,那么通常只需按一个功能键,即可搞定这个过程。该过程实际上分成两个步骤。

1、对程序进行编译,这需要用到编译器(compiler)。编译器将C++语句转换成机器码(也称为目标码);如果这个步骤成功,下一步就是对程序进行链接,这需要用到链接器(linker)。

2、链接器将编译获得机器码与C++库中的代码进行合并。C++库包含了执行某些常见任务的函数(“函数”是子程序的另一种称呼)。

参考资料来源:百度百科-C++

HP4411s593
推荐于2017-11-24 · TA获得超过460个赞
知道小有建树答主
回答量:302
采纳率:100%
帮助的人:321万
展开全部
double * a;意思是a指向一个double变量的地址;
double **a;意思是a指向一个地址,而这个地址指向一个double变量;
举个例子:
double i=10.11;
double *ptr=&i;
double **pptr=&ptr;
cout<<"测试地址:"<<endl;//输出结果一样,都是i的地址
cout<<&i<<endl;
cout<<ptr<<endl;
cout<<*ptr<<endl;
cout<<"测试值:";//输出结果一样,都是i的值
cout<<i<<endl;
cout<<*ptr<<endl;
cout<<**pptr<<endl;

Lz现在明白没有?
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式