C语言特性(函数与指针)

函数与指针

用函数指针变量调用函数

当定义函数之后,C语言允许定义一个指针变量来指向该函数,接下来就可通过该指针变量来调用函数了。
使用函数指针变量的步骤如下

1.定义函数指针变量,语法格式为:
    函数返回值类型(* 指针变量名)();
2.将任何已有的函数赋值给函数指针变量。
3.使用函数指针变量来调用函数。语法格式为:
    (*函数指针变量)(参数);

返回指针的函数

当函数返回指针时需要注意,由于函数返回的指针只保存了一个地址值,如果该指针指向的是被调用函数中的局部变量,这将非常危险,因为函数调用结束后,该函数中局部变量所占用的内存已经释放,那么该指针指向的内存单元中存储的数据是不确定的。
为了保证函数返回的指针是有效的,有两种方式:

1.如果函数返回的指针指向被调用函数中的局部悲凉,该局部变量应该使用static修饰。
2.让函数返回的指针指向暂时不会被释放的数据,如指向main()函数中的变量,在main()函数结束前,函数返回的指针
是安全的。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值