请问:C整形变量赋数值、++、--等是不是原子操作?

2019-12-27 18:58发布

就是如同下面的例子:

int i;

i = 123;
i++;
i--;

诸如此类......
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
36条回答
mon51
1楼-- · 2019-12-31 11:38
这个问题20多年前就谈论过,反汇编看看代码就知道了。
chendaon
2楼-- · 2019-12-31 15:15
做临界代码保护吧,一般人多掉过这个坑
chendaon
3楼-- · 2019-12-31 19:49
在AVR的年代,读16bit的数据是多周期的,由于读取中断变量没有做临界保护,掉过一次坑,
prince2010
4楼-- · 2020-01-01 00:00
 精彩回答 2  元偷偷看……
prince2010
5楼-- · 2020-01-01 02:43
mon51 发表于 2017-6-2 08:40
这个问题20多年前就谈论过,反汇编看看代码就知道了。

仿真看了一下,一个++操作确实对应有好几条汇编语句......
liupeng08305
6楼-- · 2020-01-01 06:11
mon51 发表于 2017-6-2 08:40
这个问题20多年前就谈论过,反汇编看看代码就知道了。

赞!!

一周热门 更多>