在 c++ 中将负 int 转换为二进制字符串
Convert negative int to binary string in c++
我需要将负整数转换为二进制字符串。我用了两个的补语。例如,我的数字是 -1。
首先,我将负数更改为正 1。然后,转换为二进制字符串是 0001。接下来,我翻转字符串是 1110。
问题是我不知道如何在字符串中添加 1 以获得 1111。
我已经使用了 32 位的位设置功能,例如
bitset<32>(input).to_string();
原来是1111 1111 1111 1111 1111 1111 1111 1111 1111。我只需要最后 4 个。我不知道如何带走其余的。我需要 32 位,因为我的输入可能是很大的数字,例如 -300。
请帮我解决这个问题。
如果您完全能够取一个 int,翻转符号,然后翻转所有位,但您只需要帮助添加一个,有一个简单的解决方案!
在翻转位之前添加 1。就是这样!
你的号码是-1?加一,得到0。翻转符号,仍然是 0。转换为二进制字符串 0000。现在翻转位,你有 1111 = -1!
相关文章:
- visual在c++中将十进制数转换为二进制数
- C++十进制到二进制,如何转换
- 如何将一个ostringstream十六进制字符串字符对转换为单个unit8t等价的二进制值
- C++从二进制转换为十进制数
- 错误 C2679:二进制"<<":未找到采用类型 'std::string_view' 的右侧操作数的运算符(或者没有可接受的转换)
- 我编写了代码将十进制分数转换为其二进制等效数.它编译得很好,但在执行时挂起
- C2678 二进制 '==':未找到采用 'Card' 类型左操作数的运算符(或者没有可接受的转换)
- 如何在 O(n) 中将二进制和转换为二进制
- 我写的 ASCII 到二进制转换器C++向后显示二进制,如何使其正确显示?
- 十进制到二进制转换器 c++
- 在C++中将结构转换和存储为二进制
- 从二进制流中读取时,将双精度变量的地址转换为 char* 意味着什么?
- 如何在C ++中将二进制字符串128位转换为十进制字符串?
- 如何将二进制文件头示例代码 (C++/C#) 转换为 Python?
- 二进制 '==':未找到采用 'Enemy' 类型左侧操作数的运算符(或者没有可接受的转换)
- 将二进制转换为十进制,我如何要求用户仅输入二进制
- QTextStream的操作数到二进制的转换无效
- 在c++中读取和转换二进制数据
- c++转换二进制到十进制从字符串输入
- 计算器转换二进制到浮点值-我做错了什么