如何输入二进制数

How do I input a binary number

本文关键字:二进制数 输入 何输入      更新时间:2023-10-16

我正在做一个关于检查二进制数是否是回文的问题。我的实现可以检查4或5,但一旦我输入1001,它就会解释为1001,而不是9。如何做到这一点?

 unsigned int rev=0;
 unsigned int temp=x;
 while(temp!=0)
 {
     cout<<rev<<" ";
     rev=(rev<<1)|(temp%2);
     temp=temp>>1;
     cout<<endl<<temp;
 }
 cout<<rev<<" ";
 if(rev==x)
     return true;
 else
     return false;

您可以使用strtol或任何其他函数

#include <iostream>
int main(int argc, _TCHAR* argv[])
{
    long x; 
    std::string str;
    std::cin >> str;
    char * pEnd;
    x = strtol(str.c_str(), &pEnd, 2);
    std::cout << x << std::endl;
    return 0;
}