&gt;If you find yourself typing char [..] into new code, you&#x27;re doing it wrong.<p>&gt;The only acceptable use of char in 2016 is if a pre-existing API requires char (e.g. strncat, printf&#x27;ing &quot;%s&quot;, ...) or if you&#x27;re initializing a read-only string (e.g. const char <i>hello = &quot;hello&quot;;) because the C type of string literals (&quot;hello&quot;) is char </i>.<p>Heh, basically you need to use &#x27;char <i>&#x27; for strings.  I would far prefer if strings were unsigned so that I could use &#x27;uint8_t </i>&#x27;, but if you try it you&#x27;ll get tons of conversion warnings and your code will look weird.