位运算

来源:互联网 发布:阿里云实名认证失败 编辑:程序博客网 时间:2024/06/02 21:34

已有定义枚举:

typedef enum {

    DEVSTAT_DEFAULT = 0xFF,             //!> 默认初始状态

    DEVSTAT_WKEYIN = 0x00,              //!> 工作密钥已灌装

    DEVSTAT_MKEYIN = 0x01,              //!> 主密钥已灌装

    DEVSTAT_KEKMOD = 0x02,              //!> KEK已修改

} EU_MSR_DEVSTAT;


#pragma mark - 读取设备信息

-(void) didReadPosInfoResp:(NSString *)ksn status: (EU_MSR_DEVSTAT)status battery: (MFEU_MSR_BATTERY)battery app_ver: (NSString *)app_ver data_ver: (NSString *)data_ver custom_info: (NSString *)custom_info

{

    // 判断status内容并处理相关逻辑

}


读取设备信息中,(MFEU_MSR_DEVSTAT)status  返回值 MF_DEVSTAT_DEFAULT | MF_DEVSTAT_WKEYIN,类似这样的~~~

如果要判断具体的类型,代码如下:

    if ((status & DEVSTAT_DEFAULT) == DEVSTAT_DEFAULT) {

        NSLog(@"默认初始状态");

    }

    

    else if ((status & DEVSTAT_WKEYIN) == DEVSTAT_WKEYIN) {

        NSLog(@"工作密钥已灌装");

    }

    

    else if ((status & DEVSTAT_MKEYIN) == DEVSTAT_MKEYIN) {

        NSLog(@"主密钥已灌装");

    }

    

    else if ((status & DEVSTAT_KEKMOD) == DEVSTAT_KEKMOD) {

        NSLog(@"KEK已修改");

    }





0 0
原创粉丝点击