Гуглил, нашел только вывод юникодной строки. Вывод (printf
, puts
) работает, ввод латиницы (gets
, fgets
, scanf
, fgetws
) тоже.
Компилятор GCC, стандарт c17.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <conio.h>
int main() {
char name[256]; char agestr[3]; int age;
printf("Привет, как вас зовут? ");
fgetws(name, sizeof(name), stdin); // по идее fgetws должен уметь читать юникод
printf("Очень приятно, %s, сколько вам лет? ", name); // если в name кириллица, то ничего не выводит вместо %s
fgets(agestr, sizeof(agestr), stdin);
age = atoi(agestr);
if (age == 18)
printf("Мне столько же! Просто прекрасно!");
else
printf("\nМне 18 лет. Я на %i лет/года %s вас!", abs(age-18), ((age>18)? "младше" : "старше"));
}