С "opendir" и "readdir" я читаю содержимое каталогов.Во время этого процесса я выполняю некоторые манипуляции / распределение строк: что-то вроде этого:
int stringlength = strlen(cur_dir)+strlen(ep->d_name)+2;
char *file_with_path = xmalloc(stringlength); //xmalloc is a malloc wrapper with some tests (like no more memory)
snprintf (file_with_path, (size_t)stringlength, "%s/%s", cur_dir, ep->d_name);
Но что, если строка содержит двухбайтовый символ utf8?Как вы решаете эту проблему?
stringlength*2?
Спасибо