Jef*_*ffV 2 c embedded intrinsics c-preprocessor
我之前看过这个宏,但从未真正知道它的用途.任何人都可以阐明这一点吗?
这是用于优化的编译器内在函数,通常在嵌入式编程中看到.我唯一看到它使用的是在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;
}
Run Code Online (Sandbox Code Playgroud)
可能不适用于所有编译器......