mic*_*ljt 2 c type-conversion typechecking
出于类型检查的目的,我想在行上定义一个函数
void myfunc(type1 a, type2 b)
{
...
}
Run Code Online (Sandbox Code Playgroud)
哪里type1和type2都是typedefed uint8_t.到目前为止这么好,但为了理智和检查目的(想想DbC)我想阻止使用type2第一个参数的值或type1第二个参数调用函数.可悲的是,C的隐式类型转换在这里反对我.有谁知道一种方式?
您可以将两种类型包装在Struct中.
typedef struct {
uint8_t data;
} type1;
typedef struct {
uint8_t data;
} type2;
Run Code Online (Sandbox Code Playgroud)
编辑:我不喜欢它,因为你现在必须使用a.data而不是a
| 归档时间: |
|
| 查看次数: |
375 次 |
| 最近记录: |