如何限定函数的某个传入参数只能是0或者1两个值
具体来说是我想实现一个GPIO的操作,对某个GPIO管脚进行赋值0或1的操作。比如SetGPIOValue(pin_num,value),这里如何限定value不是取0就...
具体来说是我想实现一个GPIO的操作,对某个GPIO管脚进行赋值0或1的操作。比如SetGPIOValue(pin_num, value),这里如何限定value不是取0就是取1呢?
展开
1个回答
展开全部
这个很简单。如果考虑的是传入的参数的话,可以使用宏定义或者可以使用常量
const int VALUE1=1;
const int VALUE0=0;
或者可以在函数内部进行判断,把非零值转换成1,否则是0;
const int VALUE1=1;
const int VALUE0=0;
或者可以在函数内部进行判断,把非零值转换成1,否则是0;
更多追问追答
追问
有办法在输入参数的类型上做限定么?使编译器对类型上就有检测,用错的话编译器就直接报错了。
追答
这样说的话,是不是可以尝试使用bool型数据,因为在C/C++里面真为1,假为0,或者可以使用一个函数作为输入形参,在这个函数里面直接限定就好了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询