什么情况下用函数指针(什么情况下是必须使用指针的请举一两个例子)
本文目录
什么情况下是必须使用指针的请举一两个例子
做链表要用到指针。在C语言中,函数参数传递方式为传值,如果想在函数中改变所传参数的值,就要用到指针。比如交换两个变量值的函数,如果写成下面这样,就什么效果都没有。voidswap(inta,intb){intt;t=a;a=b;b=t;}应该写成这样:voidswap(int*a,int*b){intt;t=*a;*a=*b;*b=t;}C++有引用传值,也可以达到同样效果。
c语言中,要用函数直接调用就好啦为什么还要用指针
函数的调用必须是已知文件名的。如果你写一个系统的某一层,不知道其他层的内部情况,这时候用指针传递函数最合适。还有,结构体里包含指向函数的指针,就相当于一个简单的“对象”了。看看linux内核里各接口的定义。函数指针的使用使的内核可以很多人同时开发,并且大家只需要知道相应的接口就可以了。这套框架,离不开函数指针。
函数指针的应用场景
在有些场合,同一个的逻辑和数据,需要不同的函数去处理,就可以把函数地址作为一个函数指针,作为一个变量传进去。跟面向对象编程里函数多态类似,但又不完全一样。
什么时候会用到函数指针
比较多的时候是设置回调函数,窗口消息处理函数的时候。你传进去自定义的函数名,对应的设置函数参数就是函数指针。
函数的形参,什么时候该用指针
当拟用被调函数来改变主调函数中的变量值时得考虑使用指针,否则不可能达到永久性改变主调函数中的变量值的目的;当被调函数用来操作主调函数中的数组时就使用指针形参,否则无法操作成功;有些操作是用不用指针都可行的,但用指针显得更简单明了,所以为了简化代码设计也考虑使用指针形参……
更多文章:
sql inserted(sql server中的触发器问题:当批量增删数据时,inserted和deleted中的数据会多于一行吗)
2024年6月26日 15:31
notepad2(notepad2和notepad++区别是什么哪个好)
2024年7月24日 02:23
构造函数的作用是初始化数据成员(类里面的构造函数作用(初始化成员数据值))
2024年6月21日 00:42
sectional(sectional sofa是什么意思)
2024年3月5日 06:05
c语言程序设计教程中国农业出版社(2008年专接本教育专业课考试用参考教材目录)
2024年9月8日 11:10
数据库datetime怎么用(数据库中datetime是什么意思)
2024年9月7日 15:45
looking forward to(look forward to 什么意思什么用法)
2024年7月22日 05:35
python中datetime(python datetime处理时间)
2024年7月24日 10:52
停止打嗝最有效的方法(不停打嗝怎么办 有效缓解打嗝的方法和技巧)
2024年6月8日 22:02