Annoyingly, there is no simple user accessible UTF-8 decoder in libc. The only standard way to use iswalpha is to convert to wchar_t first.<p>One hack is to assume that bytes of UTF-8 encoded strings above 127 are all letters.  It mostly works :-)