如何区分代码中的各种Qx定点类型?
这样的事情是否可以接受:
typedef int32_t q31;
typedef int32_t q25;
typedef int32_t q23;
typedef int32_t q15;
然后(用法示例):
q23 x;
q23 y;
q31 out;
.
.
.
out = do_something_input_q23s_output_q31(x,y);
// etc.
上面的typedef有意义吗?什么是最合适的解决方案?
答案 0 :(得分:0)
您可以将每个定点整数包装在结构中,这将使编译器强制使用该类型。我不知道这会如何影响性能。
我想您可以使用预处理器魔术来将实现切换为裸int以便发布。