使用短int int#
问题描述:
我正在学习C#,这对我来说听起来很奇怪... 为什么要添加到short
类型我必须做一个显式的转换?使用短int int#
short x = 1, y = 1;
short z = x + y; // Compile-time error
明确的转换:
short z = (short) (x + y); // OK
答
显示编译错误,因为因为赋值运算符的右侧的算术表达式求值默认为int。所以你需要做类型转换。
虽然可以将plus操作数与其他数据类型(如long int double)一起使用,其中目标变量具有相同的存储大小或较大的存储大小,但由于short的大小较小,所以不能直接使用它。
32000 + 32000.两者都是短型,但结果超过短可以持有。 +运算符返回int,因此它可以处理多个short值。你必须再次存储它,但它会抛出异常,如果该值超过short.maxvalue –
http://*.com/questions/11853602/c-sharp-does-not-let-me-sum - 两个短裤到一个短 –