C++ 如何根据浮点值数组条件设置位集中的值?
我有一个浮点值数组。该数组根据阈值转换为二进制值数组。 e、 g A=0.3,1.3,4.4,6.4 如果阈值=4 A=0,0,1,1 现在,我想把它转换成比特集。有没有一个简单的方法可以做到这一点 我是编程新手,如果这个问题太傻,我很抱歉 谢谢C++ 如何根据浮点值数组条件设置位集中的值?,c++,bitset,C++,Bitset,我有一个浮点值数组。该数组根据阈值转换为二进制值数组。 e、 g A=0.3,1.3,4.4,6.4 如果阈值=4 A=0,0,1,1 现在,我想把它转换成比特集。有没有一个简单的方法可以做到这一点 我是编程新手,如果这个问题太傻,我很抱歉 谢谢浮动浮动[16]={/*…*/}; std::位集位; 对于(尺寸i=0;i
浮动浮动[16]={/*…*/};
std::位集位;
对于(尺寸i=0;i<16;++i)
bit.set(i,浮点[i]<4);
循环时,您可以直接将浮点数组转换为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);
}
std::数组值={…};
std::位集位集;
对于(std::size_t i=0;i阈值);
}
std::array<float, N> values = {...};
std::bitset<N> bitset;
for (std::size_t i = 0; i < values.size(); ++i) {
bitset[i] = (values[i] > threshold);
}