有没有办法让
gcc预处理器用typedef定义的类型替换类型,即
这样的事情:
typedef unsigned char Uint8
int main(void)
{
Uint8 a = 1;
Uint8 b = 2;
Uint8 c;
c = a + b;
return 0;
}
会被预处理成这样的东西:
int main(void)
{
unsigned char a = 1;
unsigned char b = 2;
unsigned char c;
c = a + b;
return 0;
}
最佳答案 不,没有,因为类型别名是编译阶段的一部分而不是预处理阶段.因此,预处理器无法通过设计了解任何类型,也无法对这些类型执行任何操作.还有,你忘记了;在typedef语句的末尾.