c语言——指针

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录


前言

提示:这里可以添加本文要记录的大概内容:


提示:以下是本篇文章正文内容,下面案例可供参考

一、指针的定义和作用

指针=内存地址

指针变量=存储着内存地址的变量

注意:指针名字为p而不是*p

指针具体体现

下面的代码才是真正的交换

指针的第二个作用:可以返回多个值

指针的第三个作用:把函数的结果和状态分开

指针的第四个作用:方便操作数组和函数

二、指针的运算


void让上述函数更有通用性

三:二级指针

有两种二维数组定义格式

p是二级指针,*p获取的是指向一维数组的指针,即*p=arr1,**p才是一维数组里的具体值

int arr[3][5] = { {1,2,3,4,5},{11,22,33,44,55},{111,222,333,444,555} };
int(*p)[5] = arr;
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 5; j++) {
printf("%d ", *(*p + j));
}
printf("\n");
p++;
}

二者是获取指针的方式不同

这里的二维数组存放的不是具体数据而是两个内存地址所以是*p——int**p

In summary:

数组指针就是指针

指针数组就是数组

其实数组和指针都是地址,只不过数组是常量,指针是变量

四:函数指针

int (*p[4])(int, int) = {add,sub,mul,de};

函数指针的细节:这里的函数指针数组是只有形参完全相同而且返回值类型也要一样的函数,才能放到同一个函数指针数组当中


总结

提示:这里对文章进行总结:
:以上就是今天要讲的内容,本文仅仅简单介绍了指针的使用和各种用法,而指针能使我们快速便捷地处理数据的函数和方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值