我们什么时候在#define进行类型转换

时间:2015-08-17 12:22:17

标签: c casting macros

我们什么时候在这样的定义中使用类型转换:

#define MAGIC_NUMBER  (unsigned char)0x5D

为什么有必要?

1 个答案:

答案 0 :(得分:6)

回答

  

为什么有必要

没有显式强制转换,0x5D被视为整数文字或整数常量,以十六进制形式。通过演员表,我们尝试明确地将其表示为unsigned char

  

我们何时使用

过于宽泛,可能超出了答案的范围。例如,在%hhx系列的情