int main(int argc,char **argv) { unsigned char a = 10,b = 100; std::cout<<sizeof(a-b)<<endl; return 1; }
产量:4
什么是返回数据类型?
解决方法
算术总是至少在C中用int精度执行. a和b都被提升为int,减法的结果是int类型.
有一组规则用于确定用于算术运算的类型; MSDN有a handy table listing the rules.
int main(int argc,char **argv) { unsigned char a = 10,b = 100; std::cout<<sizeof(a-b)<<endl; return 1; }
产量:4
什么是返回数据类型?
有一组规则用于确定用于算术运算的类型; MSDN有a handy table listing the rules.