我们什么时候在这样的定义中使用类型转换:
#define MAGIC_NUMBER (unsigned char)0x5D
为什么有必要?
最佳答案
回答
why is it necessary
在没有显式转换的情况下,0x5D
被视为十六进制形式的整数文字或整数常量。通过强制转换,我们尝试显式将其表示为 unsigned char
。
When do we use
过于宽泛,可能超出了答案的范围。例如,一种可能的情况是,在 printf()
系列的情况下,将 MACRO 作为参数提供给 %hhx
格式说明符.
关于c - 我们什么时候在#define 中进行类型转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32050301/