Estoy una programas sencillos en C++ y necesito tirar de parámetros en los que puede haber acentos, eñes y demás. Todas estos caracteres especiales están en contenidos en el ASCII, que es el que usa el C++ en los char. Hasta aquí todo bien, sin problema, pero el caso es que Linux usa por defecto el UTF-8. El problema es que en UTF-8 estos caracteres especiales (vocales con acentos, eñes, etc.) usan dos bytes para codificarse, por lo que si estoy trabajando con chars/strings se me viene todo abajo.
¿Alguna idea de como poder solucionar esto? Me he estado mirando la clase locale, pero no encuentro nada que me ayude a resolver este problema (aunque no sé porqué me da que se me está escapando algo).