如何根据浮点值条件数组在bitset中设置值

How to set values in a bitset according to a array of floating point values conditions?

本文关键字:bitset 设置 数组 条件 何根      更新时间:2023-10-16

我有一个浮点值数组。根据阈值将所述数组转换为二进制值数组。如

A = 0.3,1.3,4.4,6.4;

if threshold = 4

A = 0,0,1,1;

现在,我想把它转换成bitset。有简单的方法吗?

我是新的编程,所以抱歉,如果问题太愚蠢。

谢谢

你可以直接将浮点数数组转换为std::bitset:

std::array<float, N> values = {...};
std::bitset<N> bitset;
for (std::size_t i = 0; i < values.size(); ++i) {
    bitset[i] = (values[i] > threshold);
}
float floats[16] = {/*...*/};
std::bitset<16> bits;
for(size_t i = 0; i < 16; ++i)
    bits.set(i, floats[i] < 4);