15

Similarly, is a naked char16_t signed or unsigned? Is it implementation defined?

templatetypedef
  • 362,284
  • 104
  • 897
  • 1,065
Samuel Edwin Ward
  • 6,526
  • 3
  • 34
  • 62

1 Answers1

20

From the standard (pre-C++11 draft n3290, or post-C++11 draft n3337) §3.9.1 Fundamental types:

Types char16_t and char32_t denote distinct types with the same size, signedness, and alignment as uint_least16_t and uint_least32_t, respectively, in <stdint.h>, called the underlying types.

uint_least16_t and uint_least32_t are both unsigned (from §18.4.1 Header <cstdint> synopsis), so same for char16_t and char32_t.

Mat
  • 202,337
  • 40
  • 393
  • 406