当前位置:首页 » 编程语言 » c语言指针与c指针

c语言指针与c指针

发布时间: 2025-03-08 20:02:01

‘壹’ 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语言中对指针的理解与举例子

指针是C语言中一个关键概念,理解起来可能较为抽象。首先,指针本质上也是一个变量,具备普通变量的特性。当你声明一个int类型的变量a时,它占据一定的内存空间,通常为四个字节大小。你可以给a赋值,例如1、2、3等整数。同样地,指针也占据内存空间,但其存储的内容是地址,即另一个变量或数据结构的内存位置。

为了更形象地理解,我们可以将指针比喻为快递员。快递员有自己的家,但日常工作中很少回到家中,更多是在取件和送件。他们掌握许多地址信息,根据这些地址去相应的地方取件或送件。在C语言中,指针可以用来访问和修改其他变量的值,就像快递员根据地址拿到或送去相应的物品。

具体到C语言中,普通指针的使用十分简单。例如,声明一个字符指针p,并将其指向变量a的地址,这样就可以通过p来访问a的值。这与普通变量的使用方式类似,只是多了*号作为指针运算符。

在深入理解指针时,可能会遇到两个容易混淆的概念:指针函数和函数指针。指针函数是一个指向函数的指针,具有普通指针的特性,可以指向其他函数。而函数指针则是一个函数,具有普通函数的特性,可以接受参数并返回结果。不过,函数指针的返回值是一个指针。

因此,理解指针时,可以将它与你已熟悉的概念联系起来。例如,当你定义一个指针时,可以将其与普通变量进行类比;当使用指针函数时,则可以考虑普通函数的操作方式。这并不复杂,只是将其视为一种新的操作方式。

总之,指针是C语言中强大的工具,理解其本质和用法对于编写高效且灵活的程序至关重要。通过类比和类推,可以更容易地掌握指针的使用技巧,从而在编程中得心应手。

热点内容
scratch少儿编程课程 发布:2025-04-16 17:11:44 浏览:640
荣耀x10从哪里设置密码 发布:2025-04-16 17:11:43 浏览:368
java从入门到精通视频 发布:2025-04-16 17:11:43 浏览:86
php微信接口教程 发布:2025-04-16 17:07:30 浏览:310
android实现阴影 发布:2025-04-16 16:50:08 浏览:794
粉笔直播课缓存 发布:2025-04-16 16:31:21 浏览:346
机顶盒都有什么配置 发布:2025-04-16 16:24:37 浏览:213
编写手游反编译都需要学习什么 发布:2025-04-16 16:19:36 浏览:817
proteus编译文件位置 发布:2025-04-16 16:18:44 浏览:367
土压缩的本质 发布:2025-04-16 16:13:21 浏览:594