【问题标题】:Operation with short int C# [duplicate]使用short int C#进行操作[重复]
【发布时间】:2015-12-25 08:38:24
【问题描述】:

我正在学习 C#,这对我来说听起来很奇怪...... 为什么要添加到short 类型我要进行显式转换?

short x = 1, y = 1;
short z = x + y; // Compile-time error

显式演员:

short z = (short) (x + y); // OK

【问题讨论】:

  • 32000 + 32000。两者都是空头类型,但结果超出空头所能承受的范围。 + 运算符返回 int,因此它可以处理的不仅仅是短值。您必须再次将其转换为short,但如果该值大于short.maxvalue,它将引发异常

标签: c# types casting


【解决方案1】:

显示编译错误,因为赋值运算符右侧的算术表达式默认计算为 int。所以你需要进行类型转换。

虽然可以将 plus 操作数与其他数据类型(如 long int double)一起使用,其中目标变量具有相同的存储大小或更大的存储大小,但 short 具有较小的大小,因此您不能直接使用它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-01-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-05
    • 2012-09-14
    • 2015-10-21
    相关资源
    最近更新 更多