unsigned char u = 9, u2 = 42;
std::cout << u2 - u << std::endl;//33
std::cout << u - u2 << std::endl;//-33 modulo 256
int i = 10, i2 = 42;
std::cout << i2 - i << std::endl;//32
std::cout << i - i2 << std::endl;//-32
std::cout << i - u << std::endl;//1
std::cout << u - i << std::endl;//255
注释是我根据书上知识推测的结果,不过怎么跑出来是33,-33,32,-32,1,-1
unsigned char不是只能存0-255吗?怎么能出来个-1
std::cout << u2 - u << std::endl;//33
std::cout << u - u2 << std::endl;//-33 modulo 256
int i = 10, i2 = 42;
std::cout << i2 - i << std::endl;//32
std::cout << i - i2 << std::endl;//-32
std::cout << i - u << std::endl;//1
std::cout << u - i << std::endl;//255
注释是我根据书上知识推测的结果,不过怎么跑出来是33,-33,32,-32,1,-1
unsigned char不是只能存0-255吗?怎么能出来个-1
