打印
[牛人杂谈]

思考问题-函数指针问题

[复制链接]
320|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
gaoyang9992006|  楼主 | 2020-4-22 23:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如果一个函数指针在主循环执行4个不同的函数体,在中断负责切换。
那么如果当前正指向某个函数,并执行了一半,这个时候发生中断了,将指针切到另外一个函数了。
那么这个中断退出后,主循环函数是继续执行没有执行完的函数呢,还是直接来执行新的函数呢?

使用特权

评论回复
沙发
gaoyang9992006|  楼主 | 2020-4-22 23:18 | 只看该作者
还是会跑飞,有人思考过这个问题没?要不要试试看。?

使用特权

评论回复
板凳
xixi2017| | 2020-4-22 23:44 | 只看该作者
这个问题好深奥,试试吧

使用特权

评论回复
地板
dongnanxibei| | 2020-4-23 13:13 | 只看该作者
看到楼主在另外一个版块发的帖了。事实证明,函数会继续执行完毕,然后切换到新指向函数。

使用特权

评论回复
5
xuanhuanzi| | 2020-4-23 20:57 | 只看该作者
总结的不错。

使用特权

评论回复
6
ayb_ice| | 2020-4-24 16:48 | 只看该作者
当然是执行以前的函数
在执行函数指针的一瞬息间就已经跳转到目标函数了,此时函数指针的内容已经不能影响什么了,只在下次执行函数指针调用时才会取决于当时的值

使用特权

评论回复
7
gaoyang9992006|  楼主 | 2020-4-24 18:06 | 只看该作者
ayb_ice 发表于 2020-4-24 16:48
当然是执行以前的函数
在执行函数指针的一瞬息间就已经跳转到目标函数了,此时函数指针的内容已经不能影响 ...

是的,经过实际测试就是这样的,在中断触发时候,不会影响当前函数的执行,而在本次执行完后的下一轮才执行新指向的函数。

使用特权

评论回复
8
zhuomuniao110| | 2020-4-24 19:10 | 只看该作者
有例子吗,在哪儿

使用特权

评论回复
9
gaoyang9992006|  楼主 | 2020-4-24 19:11 | 只看该作者
10
zhuomuniao110| | 2020-4-24 19:12 | 只看该作者
gaoyang9992006 发表于 2020-4-24 19:11
https://bbs.21ic.com/icview-2945128-1-1.html

回复好快,多谢,我去学习学习。

使用特权

评论回复
11
yiy| | 2020-4-26 20:10 | 只看该作者
非常666,没想到还可以这么用。

使用特权

评论回复
12
yiy| | 2020-4-26 20:10 | 只看该作者
第一次见到有人在单片机中用指针函数,之前只是个传说。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

认证:西安公路研究院南京院
简介:主要工作从事监控网络与通信网络设计,以及从事基于嵌入式的通信与控制设备研发。擅长单片机嵌入式系统物联网设备开发,音频功放电路开发。

1958

主题

15904

帖子

207

粉丝