取整数n个数并设置第n位的函数

sun*_*007 3 c bit-manipulation

我想写一个函数,如下所示.我想在整数中设置第n位.例如,我想在数字8中设置第6位.

#include<stdio.h>
int set_bit(int number , int postion);

int main()
{
   int a;
   a=(8,6);
}

int set_bit(int number , int position)
{
   number = number |(1<<position);
}
Run Code Online (Sandbox Code Playgroud)

上述功能不起作用.任何人都可以纠正我吗?

NPE*_*NPE 5

两个问题:

  1. 你没有调用这个函数:a=(8,6)应该阅读a = set_bit(8, 6).

  2. 你没有从函数返回值:number = number |(1<<position)应该读return number | (1 << position).