我有12位数的长值作为算术运算的输出。所以我只想要中间的4个值。例如,我有823954957346,我只想要5495存储在一个变量中。我可以用C或C ++做到这一点吗?
答案 0 :(得分:2)
您可以使用以下内容:
main() {
unsigned long i = 823954957346;
printf ("%lu\n", i);
printf ("%lu\n", i / 10000 % 10000);
}
输出:
823954957346
5495
答案 1 :(得分:2)
如果您真的在说话位,请向右移4位,然后使用按位AND屏蔽4个低位。我的C ++有点生疏,但它类似于:
number >> 4 & 15
如果你正在说数字,除以10000然后取数字mod 10000,如:
number / 10000 % 10000
易。