c语言中常规函数和指针函数区别

1、在函数名前面多了一个*号,而这个函数就是一个指针函数。

2、其返回值是一个int类型的指针,是一个地址。

实例

#include<stdio.h>
 
int* fun1(int* x)    //传入指针
{
    int* tmp = x;     //指针tmp指向x
    return tmp;       //返回tmp指向的地址
}
int fun2(int* x)    //传入指针
{
    return *x;       //返回x指向的地址对应的值
}
int main()
{
    int b = 2;
    int* p = &b;   //p指向b的地址
    //调用常规函数
    printf("func1:%d\n",*fun1(p));//输出p指向的地址的值
    //调用指针函数
    printf("func2:%d\n",fun2(p));//输出p指向的地址的值
    return 0;
}
/*
输出:
func1:2
func2:2
*/

c语言中回调函数的使用:1、使用typedef声明一个函数指针。2、使用C语言实现一个和函数指针返回值类型。函数参数都一样的函数(函数名字任意取)。3、将实现的C语言函数作为参数传递(实际上就是传递的函数指针)。4、满足特定的情况下,调用回 ...