Как проверить, что локализация заработала ?

Если у вас полная реализация POSIX.2 1996, то проще всего воспользоваться утилитой locale. Применяя locale можно получить множество полезных сведений:

- какие возможные значения locale уже инсталлированы и известны системе.
$ locale -a

- каковы текущие значения отдельных категорий локализации :
$ locale

- каково внутреннее содержание какой-либо категории :
$ locale LC_CTYPE
$ locale LC_TIME
e.t.c.

- каковы текущие значения ключей (keywords) в какой-либо категории локализации :
$ locale alpha
$ locale toupper
$ locale abmon
e.t.c.

Также можно воспользоваться такой короткой прогрммкой :





/* testlocl.c : Минимальная проверка работоспособности locale,

                категория LC_CTYPE, "ключевое слово" - alpha */



#include <stdio.h>

#include <locale.h>

#include <ctype.h>



main() {



unsigned char c=0x0f9;



setlocale(LC_ALL, "");



printf("LC_CTYPE\t= %s\n", setlocale(LC_CTYPE, NULL));



printf("isalpha(%c)\t= %s\n", c, isalpha(c) ? "yes" : "no" );



return 0;

}


Для русской локализации в КОИ-8 согласно RFC-1489

код f9h - это русская буква "Ы" : 

F9  CYRILLIC CAPITAL LETTER YERI

т.е. : 
$ cc -o testlocl testlocl.c

$ ./testlocl

LC_CTYPE = ru_RU.KOI8-R 

isalpha(Ы) = yes