>在C++中,可以用十进制:int x = 158
、八进制:int x = 0236
和十六进制:int x = 0x9e
来分配整数。在任何基数中定义int
的最简单方法是什么,例如二进制,基数3,基数9,等等?是否有像 b101110
这样的标准前缀,或者过程更复杂?
谢谢。
文字 ( 0b01010110101
) 已在 C++14 中添加。
不支持其他基础,但可以使用用户定义的文本和 constexpr 的模板化原始形式来模拟它们。Andrzej Krzemienski在这里描述它: https://akrzemi1.wordpress.com/2012/10/23/user-defined-literals-part-ii/
首先:你的示例不是赋值,而是初始化。 其次,将表达式分配给int
(或使用表达式初始化它)。 最后,积分文字(仅在表达式中合法)只能用十进制、八进制或十六进制表示;C 系列语言不支持其他任何语言。