×

指针与指针变量的区别

指针与指针变量的区别(C语言中的指针跟指针变量有什么区别)

admin admin 发表于2024-09-26 07:15:39 浏览5 评论0

抢沙发发表评论

大家好,指针与指针变量的区别相信很多的网友都不是很明白,包括C语言中的指针跟指针变量有什么区别也是一样,不过没有关系,接下来就来为大家分享关于指针与指针变量的区别和C语言中的指针跟指针变量有什么区别的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开始吧!

本文目录

C语言中的指针跟指针变量有什么区别

指针就是一个地址,而指针变量是老肢御可以被赋予不同的的指针值,即“指侍岩针”是指地址,“指针变量”是指取值饥氏为地址的变量

指针变量和变量指针的异同

指针变量是清搭变量,用于存放指针,或者说存放地址变量指针是指针,是变量的地址散孝指针变冲正稿量可以存放变量的指针,存放了变量的指针的指针变量可以访问那个变量的存储区,间接地修改或读取它的值

指针变量和指针的区别是什么

区别:

以下面的情况说明:

1、int a = 5;

int* p = &a;

结论:

*p   是指针变量p指向的变量a的存储内容,*p = 5;

p   是指针变量的存储内容,因为p指向a,所以p的存储内容(存储空间的值)就是系统为变量a分配的存储地址;

2、分析:

int a = 5;

int* p = &a;

int* q = p;

3、【说明】

1)上面的程序中首先声明了一个int类型的变量a,初始化为5;这个过程为:

2)在初始化时,存储空间存储的是int型的值5,存储地址是由系统自动分配的,同理要声明一个指向渗毕a的指针,在初始化的时候赋值给指针变量的值应该是变量a的存储地址,故而有 int* p = &a;

4、在下面的程序中:

int arr = { 1, 2, 5, 7 };

int* parr = arr;

同理,要是声明另外一答册个int类型的指针变量q:

1)int* q = p;

声明了一个int类型的指针变量,并将指针变量p的值赋予q,同样是变量,a = 5,5是变量a的存储空间的值,那么p=?,p等于p存储空间的那个值,即p=#ffa1(a的存储地址);

现在将这个值赋给了指针变量q,正如a初始化的过程一样,int a=5的过程,是将5存储在了int类型变量的存储空间之中,初始化指针变量q时,也是将等号右边的值存储在q的存储空间之中,上边的操作的结果如下:

使得指针变量q指向了变量a。

5、【说明】

从上面的操作可以看出,&p代表的是指针变量p的存储地址。

int* q = *p;

声明了一个指针变量q,并对其初始化,这一过程的操作如下:

为指针变量q初始化,q的存储空间中存储的值为5.

【说明】

1、从上面的操作可以看出,是将*p的值赋给了q,p指向变量a,p=#ffa1,而*p的过程就是获得p地址处的存储空间的值,即*(#ffa1)=5,也就是将5赋给了清喊宏指针变量q,q的存储空间存储的是5;

2、指针变量是指向某一变量的变量,在其存储空间中存储的一般是其他变量的存储地址,上面的初始化过程int* q = *p;是非常危险的,有可能造成程序奔溃。

指针名和指针变量一样么有区别吗

一样,要想调用指针变量就要给变量取中闭一个名字,这个名字就是指针名,以迅让后每当用到指针变量的时候直接写上指针名就可卖昌裂以调用了。

指针与指针变量的概念是什么

1、指针,是C语言中的一个重要概念及其特点,也是掌握C语言比较困难的部分。指针也就是内存地址,指针变量是用来存放内存地址的变量,不同类型的指针变量所占用的存储单元长度是相同的,而存放数据的变量因数据的类型不同,所占或桥用的存储空间长度也不运蠢同。

有了指针以后,不仅可以对数据本身,也可以对存储数据的变量地址进行操作。 

2、指针变量是指存放地址的变量。因地址的改变而做出指定性质的衡量变法。

扩展资料:

指针变量定义:

1、定义指针变量的一般形式如下:

类型名*指针变量名1,*指针变量名2,... *指针变量名n ;

2、空指针

空指针是一个特殊的指针,它的值是0,C语言中用符号常量NULL(在stdio.h中定义)表示这个空值,并保证这个值不会是任何变量的地址。空指针对任何指针类型赋值都是合法的。一个指针变量具有空指针值表示当前它没有指向任何有意义的东西。

3、void指针

(void *)类型的指针叫通用指针,可以指向任何的变量,C语言允许直接把任何变量的地址作为指针赋给通用指针。

但是需要注意void*不能指向由const修饰的变量,例如const int test; void * ptv; ptv = &test;第三句是非法的,只有将ptv声明为const void * ptv;,上述第三句ptv = &test才是合法的。

当需要使用通用指针所指的数据参加运算时,需要写出类型强制转换。如通衫悄猛用指针ptv 所指空间的数据是整型数据,p是整型指针,用此式转换:p=(int *)ptv;

指针和指针变量的区别是什么

指针是一种类型郑神,指针变量是变量,不是一个东西。就像int与intj;中j的区别一样。类型不实际占用内存空间,但是它有大小。比如int的大小是4,而它的实例j占用4个Byte。指针本身也就是个地址,你的第三个问题没怎么看明白,str的确存的是你申请到的内存空间的地址,但pstr存的是str的地址。关于使用内存查看器的问题,多级指针的话VS是带逐级展开功能的,请注意你侍桥看的是pstr本身还是它所指向的老丛猛内容。

变量指针和指针的变量有什么区别

变量的指针是指变量的地址。比如定义int a;int *b;b=&a此时,b就是变量a的指针。指针变量是指int *a;此时,a首先是一个变量,同时,a是指向一个int型地明喊滚址渗隐,因此a是一个指针变量。激余

c++中指针与指针变量什么区别

指针是指地址,指针变量是指存储地址的变量指针的基本概念 在计算机中,所有的数据都是存放在存储器中的。 一般把存储器中的一个字节称为一个内存单元, 不同的数据类型所占用的内存单元数不等,如整型量占2个单元,字符量占1个单元等。为了正确地访问这些内存单元, 必须为每个内枣基存单元编上号。 根据一个内存单元的编号即可准确地找到该内存单元。内存单元的编号也叫做地址。 既然根据内存单元的编号或地帆李址就可以找到所需的内存单元,所以通常也把这个地址称为指针。 对于一个内存单元来说,单元的地址即为指针, 其中存放的数据才是该单元的内容。在C语言中, 允许用一个变量来存放指针,这种变量称为指针变量。因此, 一个指针变量的值就是某凳轿谨个内存单元的地址或称为某内存单元的指针。

关于指针与指针变量的区别和C语言中的指针跟指针变量有什么区别的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。