这中case怎么引用:switch(link_key_type) { CASE(cl_sm_link_key_none, DM_SM_LINK_KEY_NONE); CASE(cl_sm_link_key_legacy, DM_SM_LINK_KEY_LEGACY); CASE(cl_sm_link_key_debug, DM_SM_LINK_KEY_DEBUG); CASE( cl_sm_link_key_unauthenticated_p192, DM_SM_LINK_KEY_UNAUTHENTICATED_P192 ); CASE( cl_sm_link_key_authenticated_p192, DM_SM_LINK_KEY_AUTHENTICATED_P192 ); CASE(cl_sm_link_key_changed, DM_SM_LINK_KEY_CHANGED); CASE( cl_sm_link_key_unauthenticated_p256, DM_SM_LINK_KEY_UNAUTHENTICATED_P256 ); CASE( cl_sm_link_key_authenticated_p256, DM_SM_LINK_KEY_AUTHENTICATED_P256 ); coerce: return (uint8_t)link_key_type; default: CL_DEBUG(("Unrecognised link key type %d\n", link_key_type)); return DM_SM_LINK_KEY_NONE;
时间: 2023-08-24 10:06:19 浏览: 361
这是一个 C 语言的 switch-case 语句,其中 CASE 是自定义宏,用于将 cl_sm_link_key_type 的值映射到对应的 DM_SM_LINK_KEY 类型值。如果 cl_sm_link_key_type 不属于上述的枚举值,则会输出一条调试信息,并返回 DM_SM_LINK_KEY_NONE。完整的代码应该是这样的:
```
switch(link_key_type) {
CASE(cl_sm_link_key_none, DM_SM_LINK_KEY_NONE);
CASE(cl_sm_link_key_legacy, DM_SM_LINK_KEY_LEGACY);
CASE(cl_sm_link_key_debug, DM_SM_LINK_KEY_DEBUG);
CASE(cl_sm_link_key_unauthenticated_p192, DM_SM_LINK_KEY_UNAUTHENTICATED_P192);
CASE(cl_sm_link_key_authenticated_p192, DM_SM_LINK_KEY_AUTHENTICATED_P192);
CASE(cl_sm_link_key_changed, DM_SM_LINK_KEY_CHANGED);
CASE(cl_sm_link_key_unauthenticated_p256, DM_SM_LINK_KEY_UNAUTHENTICATED_P256);
CASE(cl_sm_link_key_authenticated_p256, DM_SM_LINK_KEY_AUTHENTICATED_P256);
default:
CL_DEBUG(("Unrecognised link key type %d\n", link_key_type));
return DM_SM_LINK_KEY_NONE;
}
```
阅读全文