如何在short int中添加一点

时间:2012-10-26 15:22:22

标签: int bit short

我在给定位置放置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;
}
提前谢谢。 对不起我的英文。

2 个答案:

答案 0 :(得分:0)

e是位位置吗? 在这种情况下,您应该使用

  

num = num | (1<< e);

而不是

  

num = num | ë

答案 1 :(得分:0)

如果e是位,你应该num |= (1 << e)