发布网友 发布时间:2022-05-25 12:24
共5个回答
热心网友 时间:2023-10-27 17:37
*p和**p的区别:
一、指针级别不同
*p是一级指针。
**p是二级指针。
二、表示的含义不同
*p表示p所指向的地址里面存放的是一个int类型的值 。
**p表示p所指向的地址里面存放的是一个指向int类型的指针。
三、指向的内容不同
*p=a指针p将指向a上的内容。
**p=a将变量a的地址 通过指针p 赋值到变量b上。
四、存放的内容的地址不同
*p指向的地址里面存放的是一个值 。
**p指向的地址里面存放的是一个指向p的一级指针。
扩展资料
在计算机科学中,指针(Pointer)是编程语言中的一个对象,利用地址,它的值直接指向(points to)存在电脑存储器中另一个地方的值。
由于通过地址能找到所需的变量单元,可以说,地址指向该变量单元。因此,将地址形象化的称为“指针”。意思是通过它能找到以它为地址的内存单元。
在高级语言中,指针有效地取代了在低级语言,如汇编语言与机器码,直接使用通用暂存器的地方,但它可能只适用于合法地址之中。指针参考了存储器中某个地址,通过被称为反参考指针的动作,可以取出在那个地址中存储的值。
另类*和&
两个地方要注意: 在程序声明变量的时候的*,只是表明“它是一个无符号整数,这个整数指向某个内存地址,一次访问sizeof(type)长度”。这点不要和(*)操作符混淆;
在C++程序声明变量的时候的&,只是表明“它是一个引用,这个引用声明时不开辟新空间,它在内存分配表加入新的一行,该行内存地址等于和调用时传入的对应参数内存地址”。
这点不要和(*)声明符,(&)操作符混淆。
参考资料来源:百度百科:指针
热心网友 时间:2023-10-27 17:37
*p和**p的区别:
一、指针级别不同
*p是一级指针。
**p是二级指针。
二、表示的含义不同
*p表示p所指向的地址里面存放的是一个int类型的值 。
**p表示p所指向的地址里面存放的是一个指向int类型的指针。
三、指向的内容不同
*p=a指针p将指向a上的内容。
**p=a将变量a的地址 通过指针p 赋值到变量b上。
四、存放的内容的地址不同
*p指向的地址里面存放的是一个值 。
**p指向的地址里面存放的是一个指向p的一级指针。
扩展资料
指针有两种含义,一是作为数据类型,二是作为实体。
指针作为实体,是一个用来保存一个内存地址的计算机语言中的变量。指针一般出现在比较底层的程序设计语言中,如C语言。高层的语言如Java一般避免用指针,而是引用。
指针作为数据类型,可以从一个函数类型、一个对象类型或者一个不完备类型中导出。从中导出的数据类型称之为被引用类型(referenced type)。指针类型描述了一种对象,其值为对被引用类型的实体的引用。
参考资料来源:百度百科——指针
热心网友 时间:2023-10-27 17:38
int *p = a(定义指针p马上指向)和参考资料:如果您的回答是从其他地方引用,请表明出处
热心网友 时间:2023-10-27 17:38
int a ;a=b 和 int a=b热心网友 时间:2023-10-27 17:39
int *p = a;