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

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

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

我试过了:

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

但它也行不通

你是说#define Numbits(A) (int)(sizeof(A)*CHAR_BIT)不起作用吗?