C массивов символов не имеют концепции кодирования строк. Это просто байты в массиве, оканчивающиеся на \0
. Вы можете использовать wchar_t
для поддержки юникода, но доступно ли это для Turbo-C (около 1988 года) ??!.
Если вы хотите использовать UTF-8, убедитесь, что вы работаете с редактором, который может обрабатывать символы этого типа. В противном случае в однооктетной кодировке ISO-8859-16 присутствуют символы умлаут.
Если ваш редактор не может напрямую обрабатывать UTF-8, вы можете закодировать их в двоичном виде:
char umlaut_A[3] = { 0xc3, 0x84, 0x00 }; // Ä
char umlaut_a[3] = { 0xc3, 0xa4, 0x00 }; // ä
// ... etc.
Один из способов выяснить это - вставить строку UTF-8 в файл, например: Ä ä ö ü
.
Затем используйте шестнадцатеричный редактор, чтобы увидеть соответствующие цифры.