如何将预处理器(宏)类型转换为输出int

时间:2015-07-16 00:30:39

标签: c casting c-preprocessor

我有一个非常简单的宏,我只希望将其输出类型转换为int。怎么做?

#define Numbits(A) (sizeof(A)*CHAR_BIT)

我试过了:

#define int Numbits(A)({int val; val = sizeof(A)*CHAR_BIT; return val;})

但它也不起作用

1 个答案:

答案 0 :(得分:6)

你是说#define Numbits(A) (int)(sizeof(A)*CHAR_BIT)没有用吗?