【发布时间】:2016-06-30 03:02:41
【问题描述】:
给定一个整数,如何去除其二进制表示的前导零?
我正在使用按位运算符来操作它的二进制表示。我想看看一个整数在其二进制表示中是否是回文。我知道那里有不同的解决方案,但我想比较第一位和最后一位,第二位和最后一位,等等。所以,我想知道如何去掉这个 int 的前导 0。
【问题讨论】:
-
也许是一个愚蠢的问题,但你是如何得到它的二进制表示的?
-
使用按位运算符来操作其二进制表示。我想看看一个整数在其二进制表示中是否是回文。我知道那里有不同的解决方案,但我想比较第一位和最后一位,第二位和最后一位,等等。所以,我想知道如何去掉这个 int 的前导 0。
-
您可以尝试将其转换为字符串并使用
std::string::find_first_not_of。 -
我可以,但这会超出使用按位运算符进行有效检查的目的。
-
@JKD:评论不是问题。