В соответствии с isascii() manpage:
http://linux.die.net/man/3/isascii
POSIX.1-2008 отмечает isascii() как устаревший, отмечая, что он не может быть используется портативно в локализованном приложении.
Я не уверен, что вижу, где проблема переносимости. Очень простая реализация этой функции:
int isascii(int ch) { return ch >= 0 && ch < 128; }
В каких ситуациях вышеуказанная реализация не является достаточной или не переносимой?
Спасибо