我之前看过这个宏,但从未真正知道它的用途.任何人都可以阐明这一点吗?
这是用于优化的编译器内在函数,通常在嵌入式编程中看到.我唯一看到它使用的是在switch语句的"default"中断言变量的范围有限(为了更好的优化).例:
/* Get DTMF index */ switch(dtmf) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': /* Handle numeric DTMF */ index = dtmf - '0'; break; case 'A': case 'B': case 'C': case 'D': index = dtmf - 'A' + 10; break: default: _never_executed(); break; }
可能不适用于所有编译器......