开发平台(Platform): (Ex: Win10, Linux, ...)
CortexM0
编译器(Ex: GCC, clang, VC++...)+目标环境(跟开发平台不同的话需列出)
gcc-arm-none-eabi-4_8-2014q1-20140314-linux
问题(Question):
目前正在玩nRF51822,核心是CortexM0,没有OS,
在追踪它提供的一些util时发现某个有趣的写法,
搞不懂它为何要拆成两行来写,
static __INLINE uint8_t app_sched_queue_empty()
{
uint8_t tmp = m_queue_start_index;
return m_queue_end_index == tmp;
}
如果改写成return(m_queue_end_index == m_queue_start_index),
实际执行时会发生啥不可预期的结果吗?