21xrx.com
2024-11-11 03:40:43 Monday
登录
文章检索 我的文章 写文章
C++中实现将正整数转化成二进制字符串的方法
2023-07-06 15:24:22 深夜i     --     --
C++ 正整数 二进制 字符串 转化

在C++中,将正整数转化成二进制字符串是一项常见的操作。实现这一操作的方法主要有两种,分别是使用位运算和使用递归方法。

使用位运算的方法是将正整数不断右移,同时将每次右移的结果与1取余,从而得到该位置上的二进制数值,最终得到完整的二进制字符串。具体代码如下:


string toBinaryString(int n) {

  string res = "";

  while (n > 0) {

    res = (char)((n & 1) + '0') + res;

    n >>= 1;

  }

  return res;

}

使用递归方法的实现方式则是将整数不断除以2,直到除数为0,并将每次除法的余数拼接在一起,最终得到完整的二进制字符串。具体代码如下:


string toBinaryString(int n) {

  if (n == 0)

    return "0";

  

  if (n == 1)

    return "1";

  

  return toBinaryString(n / 2) + (char)((n % 2) + '0');

}

无论是使用位运算还是递归方法,都能够实现将正整数转化为二进制字符串的操作。在实际应用中,根据具体情况选择合适的方法即可。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复