Кодировка символов в программировании с такими языками, как C - PullRequest
0 голосов
/ 11 декабря 2011

Прочитав учебники и книги по C, я очень стараюсь связать свои знания UTF (как текстового формата для римских букв и всевозможных других алфавитов / сценариев) с C, как языком программирования, используемым во всем мире. ,

C, похоже, принимает символы ASCII.

Так что, если бы я хотел написать программу с вводом / выводом на китайском языке, скажем, как бы я реализовал это с C?

Ответы [ 2 ]

2 голосов
/ 11 декабря 2011

Вы бы использовали "широкий символ" wchar вместо char.

http://en.wikipedia.org/wiki/Wide_character
http://pubs.opengroup.org/onlinepubs/007908799/xsh/wchar.h.html
http://msdn.microsoft.com/en-us/library/aa242983(v=vs.60).aspx

Существуют также специальные библиотеки, такие как iconv , которые помогают на некоторых платформах.

1 голос
/ 11 декабря 2011

Это кодировка символов , а не форматирование текста . Если вы хотите использовать UTF в C, вы можете использовать библиотеку для его обработки (см., Например, здесь для библиотек UTF-8: Light C Unicode Library ). Если вы пишете программу с графическим интерфейсом, ваша библиотека с графическим интерфейсом, вероятно, имеет средства для ее обработки (GTK, KDE, wxWidgets и Tk поддерживают Unicode).

...