如何只使用10位的2字节的int?

时间:2017-02-21 01:24:59

标签: c int bit-manipulation

我在接受采访时被问到这个问题。假设一个int为2个字节,即16位,那么访问者希望我只使用10位整数,这基本上限制了int的范围。其他6位当然不会使用。

2 个答案:

答案 0 :(得分:0)

这是通过位屏蔽完成的。 ANDing会给你结果。为了给出一个想法,要从一个整数中得到8个最低有效位,你要和0xff一起使用,依此类推。

答案 1 :(得分:0)

您的面试官可能希望您展示位字段:

jdbc:oracle:thin:@(description=(address=(host=HOSTNAME)(protocol=tcps)(port=PORT))(connect_data=(service_name=SERVICENAME)(server=SHARED)))

在面试中看起来像是一个奇怪的特征,但这是我能想到的全部。

它可能仍然没有所需的行为,因为" 10位"它的功能仅适用于存储,而不适用于您使用它的任何操作。