函数与指针
来源:互联网 发布:5g网络wifi什么意思 编辑:程序博客网 时间:2024/04/25 13:09
1.函数指针变量的定义
函数返回值类型(*指针变量名)();
int (*test)()=方法名;
void Method(){}
2将已有函数赋值给函数变量
test=Method;
注意事项;
c语言允许将任何已有的函数赋值给函数指针变量,所以一个函数指针变量在不同时间可以指向不同的函数。
为函数指针变量赋值时,只需要给出函数名字,无需在函数后使用括号,也不用传入参数。此处是将函数的入口赋值给函数指针变量,而不是将调用函数后的返回值赋值给函数指针变量。
3.函数指针变量的使用
(*函数指针变量)(参数);
int max (int a,int b){
if(a>b){
return a;
}else if(a=b){
return 0;
}else{
return b;}
void test(){}
//定义函数指针变量
int(*point)()=max;
//将max的函数指针给test
point=test;
//函数指针的调用
(*point)(1,2);
4,使用函数指针作为函数参数
void map(int*data,int length,int(*fn)()){
for(int *p=data;p<data+length;p++){
//此处的函数是动态传入的
printf("%d,",(*fn)(*p))
}
void method1(){}
void method2()
mian(){
int data[]={20,10,100};
map(data,3,method1);
map(data,3,method2);
}
}
}
5.返回指针的函数
为了保证函数返回的指针是有效的:
如果函数返回的指针指向被调用函数中的局部变量,该局部变量需要使用static修饰
让函数返回的指针指向暂时不会被释放的数据,如指向main()函数的变量,只有等main()函数执行完毕时该变量才会被释放。即在main()函数结束之前,函数的返回的指针是安全的。
- 指针函数与函数指针
- 指针函数与函数指针
- 函数指针与指针函数
- 指针函数与函数指针
- 函数指针与指针函数
- 函数指针与指针函数
- 函数指针与指针函数
- 函数指针与指针函数
- 函数指针 与 指针函数
- 函数指针与指针函数
- 函数指针与指针函数
- 函数指针与指针函数
- 函数指针与指针函数
- 函数指针与指针函数
- 函数指针与指针函数
- 函数指针与指针函数
- 函数指针与指针函数
- 指针函数与函数指针
- QT5.4,VS2010
- 15. 3Sum
- 第7周项目1-(2)-一般函数
- 项目总结
- 第九周项目1(1)
- 函数与指针
- typedef用法
- Runtime的初步认识——消息机制
- 165 php Fatal error: Uncaught SmartyException: unable to write file
- JAX-WS创建和JavaAPI发送和处理SOAP消息实例
- GitHub是什么样的网站 (分享```)
- 静态成员应用 -时间
- OkHttp之Interceptors
- 深度学习基础(十)—— 稀疏编码(二)