为什么c语言函数要用指针 c语言中为什么要用指针

c语言中,要用函数直接调用就好啦 。为什么还要用指针???函数的调用必须是已知文件名的 。如果为什么c语言函数要用指针你写一个系统的某一层为什么c语言函数要用指针,不知道其他层的内部情况,这时候用指针传递函数最合适 。还有,结构体里包含指向函数的指针,就相当于一个简单的“对象”了 。
看看linux内核里各接口的定义 。函数指针的使用使的内核可以很多人同时开发,并且大家只需要知道相应的接口就可以了 。这套框架 , 离不开函数指针 。
标题c语言中为什么要使用函数指针,直接调用函数不就可以吗?函数指针一般用来做回调的 , 一般多线程用的多,因为线程之间 , 栈空间不一样 。还有就是封装好的程序,做回调的,比如我写了一段程序 , 想要给你用,如果我内部没有回调 , 你就要改动我的程序 。但我这样写,我的执行过程是123,二这个步骤,我用函数指针封装起来,如果等于空就不执行 , 然后你来用,只需要把我的函数指针,指向你的函数,我这个程序是不是就可以不改代码,然后把你的代码加到中间了,所以,函数指针除了线程中 , 通过传递消息,根据消息相互调用,之外,也是封装的一大利器 , 如果管理的好,还可以减少代码雍种,写的好,增加可读性 。当然你可以不用,也能开发同样效果的东西,难度要大很多 , 特别是代码到千行以上
C语言中为什么要用到指针呢 ?很多情况可以用到 。这需要在编程过程中形成一种思维 。
如 将一个结构体传递给一个函数 。
如果不用指针,传送速度慢,如果通过指针,只要传递一个地址 。
【为什么c语言函数要用指针 c语言中为什么要用指针】structexample
{
int i;
int j;
int f;
char a[1024];
};
void main()
{
struct example ex;
fun(ex);//将结构体ex的地址传递给函数fun
}
fun(struct example *p)
{
}
c语言函数指针的作用 。C语言中函数指针与普通指针没什么差别,只是指向的内容不同而已 。主要作用:
1、实现面向对象编程中的多态性 。
2、回调函数 。
函数指针是指向函数的指针变量 。因此“函数指针”本身首先应是指针变量,只不过该指针变量指向函数 。这正如用指针变量可指向整型变量、字符型、数组一样,这里是指向函数 。
C在编译时,每一个函数都有一个入口地址 , 该入口地址就是函数指针所指向的地址 。有了指向函数的指针变量后,可用该指针变量调用函数,就如同用指针变量可引用其他类型变量一样 , 在这些概念上是大体一致的 。
函数指针有两个用途:调用函数和做函数的参数 。
关于为什么c语言函数要用指针和c语言中为什么要用指针的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读