gpt4 book ai didi

c# - Bitshifting Int16 仅适用于文字

转载 作者:太空狗 更新时间:2023-10-29 23:00:59 26 4
gpt4 key购买 nike

当我在 VS 中编写此代码时,它不起作用(“无法将‘int’隐式转换为‘short’。存在显式转换。您是否缺少强制转换?”):

short A = 5;
short B = 1 << A;

但是这段代码绝对没问题:

short A = 1 << 5;

我知道我可以通过将整个表达式转换为 short 来消除错误,但谁能告诉我为什么会这样?

最佳答案

因为 A 不是文字,编译器不知道结果 可以表示为short。因此它需要一个显式的转换。对于字面量 5,编译器认为结果是 32,这可以放入 short 中。

关于c# - Bitshifting Int16 仅适用于文字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12983636/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com