string int2binarystring(int iNumber,int iBits)
    {
        vector<int> bTemp;
            for(int j=(iBits-1);j>=0;j--)
            {
                bTemp.push_back((iNumber>>j)&1);
            }
            string sBinary;
            for(int k=0;k<bTemp.size();k++)
            {
                if(0 == bTemp.at(k)
                    {
                        sBinary += "0";
                    }
                    else 
                    {
                        sBinary += "1";
                    }
            }
            return sBinary;
    }原文:https://blog.51cto.com/11998922/2530398