【发布时间】:2011-01-19 06:29:01
【问题描述】:
我可以指定一个 unsigned long 类型的整数文字,如下所示:
const unsigned long example = 9UL;
对于 unsigned char 我该如何处理?
const unsigned char example = 9U?;
这是避免编译器警告所必需的:
unsigned char example2 = 0;
...
min(9U?, example2);
我希望避免我目前拥有的冗长解决方法,并且在调用 min 的行中不会出现“unsigned char”,而无需在单独的行上的变量中声明 9:
min(static_cast<unsigned char>(9), example2);
【问题讨论】:
-
我把你的问题稍微改成了我认为你的意图。
10之类的东西在 C++ 中称为“文字”(而在 C 中称为“常量”)。这对 C++ 人来说更常见,并且避免与“示例”的声明混淆。 -
TL;DR: 最容易使用和阅读:
char(9)uchar(9) -
@Andrew
uchar? -
@李斯特先生土豆?
标签: c++ integer constants language-lawyer