如何使用按位运算符从整数中提取数字。即我想在整数 n=123456 中提取 234 我知道这可以使用和,或,xor 按位运算符,但我不确定如何?谢谢
最佳答案
如果此时您不想按位,我相信您可以像这样提取单个数字:
int digitAtPos(int number, int pos)
{
return ( number / (int)pow(10.0, pos-1) ) % 10;
}
我不确定这是否是最快/最有效的方式,但它确实有效。
将数字拼接起来也应该很容易,只需乘以十的幂次方即可。
如果谁有更好的解决方案,请告诉。
关于c++ - 如何使用按位运算符提取整数中的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9407289/