См. Справочную страницу putwchar
в Linux. Он говорит, что поведение зависит от LC_CTYPE
, и говорит: «Разумно ожидать, что putwchar () действительно напишет многобайтовую последовательность, соответствующую широкому символу wc». Аналогично, getwchar()
должен прочитать многобайтовую последовательность из стандартного ввода и вернуть ее в виде широкого символа.
Не думайте, что они будут читать / записывать постоянное количество байтов, как в UCS2.
Все это говорит о том, что посимвольный ввод-вывод обычно не является самым быстрым решением, и когда вы начинаете оптимизацию, помните, что в Linux и Unix вы будете работать в UTF-8. *