我在给定位置放置1位时遇到问题。 例如,如果 int e 是一个,我将 neset_t * ne 中的第一位置于1。
到目前为止我已经完成了这项工作但是没有用。
typedef unsigned short int neset_t;
void add(neset_t* ne,int e){
int num = (int) *ne;
num = num | e;
*ne = (neset_t) num;
}
提前谢谢。
对不起我的英文。
答案 0 :(得分:0)
e是位位置吗? 在这种情况下,您应该使用
num = num | (1<< e);
而不是
num = num | ë
答案 1 :(得分:0)
如果e是位,你应该num |= (1 << e)