c语言指针p和 p区别(C语言中#p是什么意思)
大家好,关于c语言指针p和 p区别很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于C语言中*p是什么意思的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!
c语言的指针部分 *p与p区别
c语言的指针部分*p与p区别如下:
1、作用不同
*p表示此指针指向的内存地址中存放的内容。
p是一个指针变量的名字,表示此指针变量指向的内存地址。
2、输出内容的格式不同
*p常用在一个和指针类型一致的变量或者常量。
p输出一个指针的地址,通常是输出一个16进制的数。
3、效果不同
*p是让编译器从指定的地址中读取出数据。
p是用来存放要读取数据的地址。
扩展资料
C语言中使用指针的作用:
1、指针使程序的不同部分能够共享数据
类似于共享内存,如果将某一个数据值的地址从一个函数传递到另外一个函数,这两个函数就能使用同一数据。
2、利用指针,能在程序执行过程中预留新的内存空间
大多数情况下,可以看到程序使用的内存是通过显式声明分配给变量的内存。但是在很多应用场合中,可能程序运行时不清楚到底需要多少内存,使用指针可以让程序在运行时获得新的内存空间,并让指针指向这一内存更为方便。
3、指针可以用来记录数据项之间的关系
在高级程序设计应用中,指针被广泛应用于构造单个数据值之间的联系。比如,程序员通常在第一个数据的内部表示中包含指向下一个数据项的指针(实际上就是链表了),来说明这两个数据项之间有概念上的顺序关系。
参考资料来源:百度百科——指针
C语言中*p和**p有何区别
一、表示的东西不同
*p表示p代表相应数据类型在存储单元中存储的首地址,而这个存储单元存储的是相应类型数据的数值。
**p表示p也表示地址,简单的说,这个地址对应的存储单元存储的数也是一个地址,而不是数值,而这个被存储的地址对应的存储单元存储的数据才是真正的相应类型的数值。
二、基类型不同
例如int*p1,**p2;
两者本质上都是指针,但是两者的基类型不同。p1的基类型是int,换句话说p1指针指向的是int型的数据,而p2的基类型是int*换句话说p2指向的是指向int型数据的指针,即指向指针的指针。
三、用法不同
例如int*p;
那么p就是指向int类型变量的一个指针。(即数组)
如果int**p;
那么p就是指向int*类型指针的一个指针。(即指向一维数组的指针,即二维数组)
*p和p的区别c语言
c语言*p和p的区别是:指针符不同:用法不同、运算符不同、变量不同、类型不同。
1、指针符不同:通常用于解引用指针,即获取指针所指向的存储单元的值,而p只是一个指针变量的名称,用于存储指针的地址。
2、用法不同:以便更改或访问存储在指向的存储单元中的值,但是p只是指针变量,不能执行此操作。
3、运算符不同:p是标识符。在算术表达式中,表示乘法,而在指针运算中,*表示解引用。p只是指针变量的名称。
4、变量不同:p的类型与指针变量的类型相同。这意味着指针变量的类型与指针指向的存储单元的类型必须匹配,否则会导致编译错误。
5、类型不同:p用于定义指针变量。例如,int*ptr;声明了一个指向整数类型的指针变量ptr,而intnum;*ptr=num;将整数变量num的值存储在ptr所指向的存储单元中。
如果你还想了解更多这方面的信息,记得收藏关注本站。