指针p与* p的区别是什么?
作者&投稿:范咸 (若有异议请与网页底部的电邮联系)
c语言的指针部分 *p与p区别如下:
1、作用不同
*p表示此指针指向的内存地址中存放的内容。
p是一个指针变量的名字,表示此指针变量指向的内存地址。
2、输出内容的格式不同
*p常用在一个和指针类型一致的变量或者常量。
p输出一个指针的地址,通常是输出一个16进制的数。
3、效果不同
*p是让编译器从指定的地址中读取出数据。
p是用来存放要读取数据的地址。
扩展资料
C语言中使用指针的作用:
1、指针使程序的不同部分能够共享数据
类似于共享内存,如果将某一个数据值的地址从一个函数传递到另外一个函数,这两个函数就能使用同一数据。
2、利用指针,能在程序执行过程中预留新的内存空间
大多数情况下,可以看到程序使用的内存是通过显式声明分配给变量的内存。但是在很多应用场合中,可能程序运行时不清楚到底需要多少内存,使用指针可以让程序在运行时获得新的内存空间,并让指针指向这一内存更为方便。
3、指针可以用来记录数据项之间的关系
在高级程序设计应用中,指针被广泛应用于构造单个数据值之间的联系。比如,程序员通常在第一个数据的内部表示中包含指向下一个数据项的指针(实际上就是链表了),来说明这两个数据项之间有概念上的顺序关系。
参考资料来源:百度百科——指针
宗楠瑞宁: 如果p为普通指针变量,那么:p代表内存中的某存储单元的地址,而*p代表该存储单元中的存储的内容.
龙胜各族自治县13425844311: C++的指针变量中,*p与p有什么区别? - ?
宗楠瑞宁: p指向的是地址,*是解除操作符,加在p前面是为了获取存储在这个地址的值
龙胜各族自治县13425844311: C语言中指针p与*p的区别? - ?
宗楠瑞宁: p是一个地址*p是这个地址中的数据
龙胜各族自治县13425844311: c语言中指针变量p与*P有什么不同 - ?
宗楠瑞宁: p是地址 *p是那个地址所包含的值
龙胜各族自治县13425844311: *p和**p的区别 - ?
宗楠瑞宁: *p和**p的区别: 一、指针级别不同 *p是一级指针. **p是二级指针. 二、表示的含义不同 *p表示p所指向的地址里面存放的是一个int类型的值 . **p表示p所指向的地址里面存放的是一个指向int类型的指针. 三、指向的内容不同 *p=a指针p将...
龙胜各族自治县13425844311: C语言中,指针变量*p与**p有什么区别??
宗楠瑞宁: *p和**p都是指针,**p是*p的地址 .
龙胜各族自治县13425844311: *p++与(*p)++的区别 - ?
宗楠瑞宁: 1、表示的含义不同 *p表示p所指向的地址里面存放的是一个int类型的值 . **p表示p所指向的地址里面存放的是一个指向int类型的指针. 2、指向的内容不同 *p=a指针p将指向a上的内容. **p=a将变量a的地址 通过指针p 赋值到变量b上. 3、存...
龙胜各族自治县13425844311: C++中,使用指针p和使用*&p有什么区别?山东 - ?
宗楠瑞宁: 首先指出你理解的一个错误,“p和*&p应该都是代表同一个内存存储单元的地址”这句话没错,但是它是有条件的,是在对变量的引用中才正确.在本题中形参是对变量的声明,并不是对变量的引用.所以你的形参为指针的引用.即 node *&...
龙胜各族自治县13425844311: *++p与++*p各自的含义和区别. - ?
宗楠瑞宁:[答案] *++p指指针p代表的地址先自加1(移动到下一个单元)然后再获取p指向的地址的数据值,如int a[10];p=a;则*++p就是a[1]的值.++*p就为a[0]+1
龙胜各族自治县13425844311: c语言定义指针时**p与*p的区别 谢谢啦 - ?
宗楠瑞宁: int**p只能指向int*p,而*p只能指向intp. 所以int**p要想指向int p,就不能加一个*号了,要加两个*号.加一个是int*p,加两个才是int p