The standard provides for implementation-defined integer types. See my other comment: <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=10868435" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=10868435</a><p>See also this suggestion that the gcc people, true to form, considered making uint8_t something other than unsigned char: <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=10868953" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=10868953</a>