到目前为止,我认为如果函数参数是enum
,那么它只能保存enum
. 但在我的情况下它被证明是错误的。
代码:
typedef enum
{
a = 0,
b,
c
} X;
typedef enum
{
e = 3
} Y;
void fn (X var)
{
printf ("%d",var);
}
int main()
{
fn (e);
return 0;
}
函数fn()
接受值 e 并且其输出为 3。为什么会发生这种情况?