【发布时间】:2020-04-08 14:34:26
【问题描述】:
long x = <some value>
int y = <some value>
我想从 x 中减去 y,以下哪个会给出不同或相同的结果
x = (int)x - y;
x = x-y
x = short(x) - short(y)
【问题讨论】:
-
这取决于 x 和 y 的值以及它们是否超出了 short 或 int 的范围。你试过了吗?
-
在投射之前,您必须确保
long适合int(例如检查INT_MIN/INT_MAX)和short相同。 (例如SHRT_MIN/SHRT_MAX) -
short(x)是什么?你是说(short)x吗?无论如何 - 你为什么不试一试呢?如果你不明白你所看到的,那么你可以在这里问。 -
你可以试试这些数字 ` x=5234000000L; y = 100; `
标签: c casting typecasting-operator