Что имеется в виду, если кто-нибудь говорит о многобайтовых наборах символов?
Это, как обычно, зависит от того, кто говорит!
По логике, он должен включать UTF-8, Shift-JIS, GB и т. Д .: кодировки переменной длины. UTF-16 часто бы не рассматривался в этой группе (даже если это что-то вроде того, что с суррогатами; и, конечно, это несколько байтов при кодировании в байты через UTF-16LE / UTF-16BE).
Но в Microsoftland этот термин чаще используется для обозначения системной кодовой страницы по умолчанию с переменной длиной (для устаревших приложений, не поддерживающих Юникод, которых, к сожалению, еще много). При таком использовании UTF-8 и UTF-16LE / UTF-16BE не могут быть включены, поскольку системная кодовая страница в Windows не может быть установлена ни в одну из этих кодировок.
Действительно, в некоторых случаях «mbcs» - это не более чем синоним системной кодовой страницы, иначе известный (даже более вводящий в заблуждение) как «ANSI». В этом случае «многобайтовый» набор символов может фактически быть чем-то таким же тривиальным, как западноевропейский cp1252, который использует только один байт на символ!
Мой совет: используйте «переменную длину», когда вы это имеете в виду, и избегайте двусмысленного термина «многобайтовый»; когда кто-то другой использует его, вам нужно будет попросить разъяснений, но обычно кто-то с опытом работы в Windows будет говорить о устаревшей восточноазиатской кодовой странице, такой как cp932 (Shift-JIS), а не UTF.