⑴ c语言指针的作用有哪些
指针的用途非常广泛,比如如果你想通过函数改变一个变量的值,就得用指针而不能用值传递。还有在很多时候变量,特别是对象的数据量实在太大,程序员就会用指针来做形参,只需要传递一个地址就行,大大提高了效率。简单地说指针就是指向变量和对象的地址。
⑵ 论述C语言中指针的概念和作用,并举例说明
1、指针概念:变量的地址(计算机内存字节的编号)叫做指针,存放变量地址的变量叫指针变
量,
简言之,指针是用来存放地址的。
2、作用:指向这个变量或数组的首地址,是变量的间接引用方式。其值如果改变,变量的值或数组元素的值也会跟着改变。程序对变量的操作实际上是对变量所在的存储空间读取和写入数据。方便对变量的操作。
举例说明:
int
a=3;/*定义一个整型变量a,并赋初值3*/
int
*p;/*定义一个指针变量P*/
p=&a;/*让p指向a的首地址,也就是a的地址*/
程序为a分配一个2个字节的存储单元,假如2个字节的地址分别为(ABCD1和ABCD2,唯一),那么p里面放的值就是ABCD1,不是3。这时可通过p直接引用a,实际上*p=3。以后不管a存放在内存中的哪个地方,只用通过调用p就可以引用a。这时如果令*p=4,则最后的a值也为4。对于数组,指针是指向数组的首地址。
⑶ C语言指针到底有什么用
指针,说白了就是储存数据内存段的地址。打个比方说,你家的门牌号是306,那么你家中回来一些客人,这些客人就相当是一些变量,而门牌号就说明了地址,如果张三在你家,另一个人要找到他,那么此时我们只需要告诉那人306,就相当于你访问一个变量时,曲线救国,不直接访问变量的值,而去访问变量的地址,这会带来很多方便。由于c语言是一种比较低级的语言,所以包括了许多对硬件操作的部分,直接对内存进行操作会带来很多方便。
⑷ C语言中指针的作用是什么
指针指向地址,指针的特性就是在地址不变的情况下,可以很方便的修改所指向的内容x0dx0ax0dx0a最重要的应用有两个,一是函数参数,二是函数指针x0dx0a函数参数:函数返回值只有一个,如果想回传多个参数,则必须使用指针x0dx0a函数指针:典型应用就是回调函数(callback)
⑸ c语言的指针有什么用
C语言指针实际上就是地址,地址相对于普通变量具有更灵活、访问更便捷的特点,另外对于结构庞大的数据结构或者数组,指针指占用4四节(32位指针),访问更高效
⑹ C语言里的指针是什么意思,起什么作用
1:指针是一个地址,指向的是个类型:
我们知道,c语言中的类型有int,char,bool(这个不常用),一般我们使用int,char就可以满足一般的类型需求的,如果对于变量的长度过大,就是用long ,float,double,关于各个类型使用的的长度问题,可以使用sizeof(int)或者sizeof(long)来查看各个类型,在系统中的小。
而指针就是一个8个字节(64系统)。
2:指针指向的是地址,地址指向的是内容:
我们需要一个变量,来存储地址,这个变量的值是地址,但是我们可以通过修改变量的值,来不断的改变地址,但是,我们如果需要改变该个地址的值的话,就需要,对地址的值进行修改,而不改变地址。
int a = 10;
int *p ;
p = &a;
*p =11;
a=?
这里我们看到,p 是一个变量,我们使用p来存储变量a的地址,这是,我们使用*p对于这个变量进行赋值,那么a的值最后,是多少呢,结果是11,因为我们使用*p赋值,就相当于a=11,赋值效果一样的。
3:指针的指针,是面对于指针的变量:
我们说,指针的指针的时候,就有点不清楚了,到底怎么区分指针和指针的指针呢。
char *p;
char **pr;
pr = &p;
我们这样看就清楚了一点,char *(*pr); *pr是一个存储的值为指针的变量,pr就是存储上个变量地址的变量。整合起来就是,pr是一个存储的值为指针的地址的变量。
这样,我们就基本,对于指针有一个直接的了解了。
⑺ c语言指针有什么用
1、指针的使用使得不同区域的代码可以轻易的共享内存数据;2、C语言中一些复杂的数据结构往往需要使用指针来构建;3、C语言是传值调用,而有些操作传值调用是无法完成的,但是这种操作可以由指针来完成,而且并不违背传值调用。
⑻ 指针的作用是什么啊
第一,指针的使用使得不同区域的代码可以轻易的共享内存数据。当然小伙伴们也可以通过数据的复制达到相同的效果,但是这样往往效率不太好。因为诸如结构体等大型数据,占用的字节数多,复制很消耗性能。
但使用指针就可以很好的避免这个问题,因为任何类型的指针占用的字节数都是一样的(根据平台不同,有4字节或者8字节或者其他可能)。
第二,指针使得一些复杂的链接性的数据结构的构建成为可能,比如链表,链式二叉树等等。
第三,有些操作必须使用指针。如操作申请的堆内存。还有:C语言中的一切函数调用中,值传递都是“按值传递”的。如果要在函数中修改被传递过来的对象,就必须通过这个对象的指针来完成。
(8)c语言的指针什么用的扩展阅读
指针的表现形式是地址,核心是指向关系指针运算符“*”的作用是按照指向关系访问所指向的对象.如果存在A指向B的指向关系,则A是B的地址,“*A”表示通过这个指向关系间接访问B。
如果B的值也是一个指针,它指向C,则B是C的地址,“*B”表示间接访问C如果C是整型、实型或者结构体等类型的变量或者是存放这些类型的数据的数组元素,则B(即C的地址)是普通的指针,称为一级指针,用于存放一级指针的变量称为一级指针变量。