Время от времени кто-то из SO указывает, что char (aka 'byte') не обязательно 8 бит.
Кажется, что 8-бит char является почти универсальным. Я бы подумал, что для основных платформ необходимо иметь 8-разрядный char, чтобы обеспечить его жизнеспособность на рынке.
Как сейчас, так и исторически, какие платформы используют char, который не является 8 битами, и почему они отличаются от "обычных" 8 бит?
При написании кода и понимании кросс-платформенной поддержки (например, для общедоступных библиотек), какое внимание следует уделить платформам с не-8-разрядными char?
В прошлом я сталкивался с некоторыми процессорами Analog Devices DSP, для которых char - 16 бит. Я полагаю, что DSP - это немного нишевая архитектура. (Опять же, в то время, когда ручной ассемблер легко бил то, что могли сделать доступные компиляторы C, поэтому на этой платформе я действительно не получал много опыта.)