如何在c++中接受用户的二进制输入
How to accept binary input from user in C++?
我想在c++中对用户给出的二进制输入做一个二进制操作,即异或。用户将只输入一个由0和1组成的序列。我如何声明一个变量来接受输入1和0作为二进制位?
一种方便的方法是使用std::bitset
。如果您看一下它的构造函数,就会发现有从多个数据源(包括std::string
和c风格字符串)构造位集的选项。构造函数验证输入,并在给出无效输入时抛出异常。
可以直接使用它的位操作符。XOR = operator^
std::bitset
是一个固定大小的容器,因此您必须指定constexpr
值的最大期望长度。
获取序列作为字符串,然后使用以2为基数的strtol |或创建自己的函数将字符串转换为整数(这并不难)|或直接使用字符串(string[i]-'0')^…
敞开心扉;)
相关文章:
- 将成员变量添加到共享库中的类中,不会破坏二进制兼容性吗
- 有根的二进制搜索树.保留与其父级的链接
- C++如何通过用户输入删除列表元素
- 创建一个函数以在输入为负数或零时输出字符串.第一次执行用户定义的函数
- 多态二进制函数
- 如何使用用户输入在C++中正确填充2D数组
- C++MySQL C api用户输入行
- 使用用户定义函数的字符串反转
- 用户定义函数中的指针和输入
- 为什么即使使用-cudart-static进行编译,库用户仍然需要链接到cuda运行时
- 如何只允许用户输入正整数
- 正在读取二进制文件(is_open)
- visual在c++中将十进制数转换为二进制数
- STL 用户定义的二进制操作
- 将二进制转换为十进制,我如何要求用户仅输入二进制
- 以二进制模式将用户定义的结构写入文件
- 如何将数据从内核模式驱动程序发送和接收到用户模式下的二进制文件
- std::map中的用户定义类:二进制表达式的无效操作数
- c++二进制搜索无论用户类型如何都会返回(find)
- 如何在c++中接受用户的二进制输入