On the C standard, char can be signed or unsigned, but the specific platform is different. In most architectures, char is signed, but in the ARM system, char is unsigned and its value range is 0-255.
Such as the following code:
Figure one
On the X86 platform:
Figure II
On the ARM-based HI3518EV200 platform:
① Compile
Figure three
② Operation
Figure Four