UTF8 печать символов в файл в C - PullRequest
1 голос
/ 03 апреля 2020

Я пытаюсь научиться кодированию c. Я хочу напечатать степень буквы utf-8 °
http://www.fileformat.info/info/unicode/char/b0/index.htm

. Я использую много кода fprintf, поэтому, если вы правильно поняли, вы не можете использовать широкие символы или fwprintf. с кодом ниже я получаю результат, который я хотел на моей локальной машине Ubuntu, но этот код

 fprintf(a,"\u00B0"); 

для назначения лекций и запуска по настроению vpl.

![enter image description here

, как вы видите на экране, символ степени приведения не печатается. так что я ищу альтернативные подходы, видел где-то \ u это зависит от компилятора, может быть, в этом причина. Я также пытался

char b*={0xC2,0xB0,0};
fprintf(a,"%s",b);

не сработал, как я ожидал, ища альтернативные подходы.

Спасибо.

Ваш вывод:

537 172 ~ 38 '16,8012 "E 43 ~ 31' 26.4002" S Крайстчёрч, Новая Зеландия 363926 74.05 536 171 ~ 12 '25.2015 "E 42 ~ 28' 19.1967" S Греймут, Новая Зеландия 9419 182.24 538 170 ~ 28 '26.4155 "E 45 ~ 53 '2,3925 "S Данидин Новая Зеландия 114347 240,97


Ожидаемый выход:

537 172 ° 38' 16,8012" E 43 ° 31 '26,4002 "S Крайстчёрч Новая Зеландия 363926 74,05 536 171 ° 12 '25.2015 "E 42 ° 28' 19.1967" S Греймут Новая Зеландия 9419 182,24 538 170 ° 28 '26,4155 "E 45 ° 53' 2,3925" S Данидин Новая Зеландия 114347 240,97

я пытался разные методы и иногда получаются ошибки; когда я пытаюсь установить локаль в utf8encode или printf (\ u00b0) cat: user.out.disp: такого файла или каталога нет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...