此代码有什么问题
typedef unsigned char datum; /* Set the data bus width to 8 bits. */
datum pattern;
datum antipattern;
antipattern = ~pattern;
Remark[Pa091]: operator operates on value promoted to int (with possibly unexpected result) C:\filepath...\file.c 386
Run Code Online (Sandbox Code Playgroud)
编译器是IAR EWARM,为什么需要将两个char变量转换为int。当所有内容都声明为未签名时,为什么还要抱怨符号更改。
任何想法都可以用来摆脱此警告吗?
c ×1