unsigned char Mid;
if( (data[2]) == 0x9A){
Mid = data[5];
if( (Mid == 1) || (Mid == 2) || (Mid == 3) )
return(Mid);
上面的代码给出:
警告:由于数据类型范围有限,比较总是错误的
正如我所料的错误。
我打字没关系
if( (unsigned char)data[2] == 0x9A){
或者
if( (data[2]&0xFF) == 0x9A){
我理解第一个,但第二个会发生什么?
用遮罩有什么作用0xFF
?