nie wiem, jak w CB to wygląda, ale w VC muszę rzutować kod znaku na typ unsigned (chodzi o wersję z cliba), w przeciwnym razie mam asercję dla znaków z kodami powyżej 127.
W C++Builder działa, ale tylko ze znakami języka angielskiego. By zadziałało z polskimi znakami diakrytycznymi muszę użyć zarówno rzutowania jak i ustwić lokalizację.
Przyznaję, że nie znałem tych funkcji, gdyż nigdy wcześniej nie potrzebowałem ich stosować, a w plik pomocy też się nie wczytywałem. Sądziłem, że funckja, sama wszystko wykrywa, czyli jest bardziej uniwersalna, niż to się okazało.
Tutaj lista innych podobnych funkcji, które mogą się przydać:
int isalnum(int c);
int isalpha(int c);
int isascii(int c);
int isblank(int c);
int iscntrl(int c);
int isdigit(int c);
int isgraph(int c);
int islower(int c);
int isprint(int c);
int ispunct(int c);
int isspace(int c);
int isupper(int c);
int isxdigit(int c);