应该以什么格式打印枚举?%什么?

Jam*_*sev 1 enums objective-c

这行代码导致编译器抱怨并进入调试模式

NSLog(@"Attacker card: %@", [attackerCard suit]);
Run Code Online (Sandbox Code Playgroud)

我想知道是否是因为西装是一个enum声明为的值

@property (assign) Suit suit;
Run Code Online (Sandbox Code Playgroud)

在哪里Suit宣布为

typedef enum {
    CLUBS, DIAMONDS, HEARTS, SPADES
} Suit;
Run Code Online (Sandbox Code Playgroud)

我是在做格式错误,问题出在其他地方?

Car*_*rum 5

枚举类型的特定大小是实现定义的,但它始终是整数类型,因此%d大部分时间都可以使用.如果您需要它非常强大,您将需要测试sizeof(Suit)并选择基于此的格式.

  • 不,没有自己的查找表就没有办法做到这一点. (2认同)