Задача: поиск в линукс-программе по именам русских файлов, которые лежат на виндовом разделе. strncasecmp естественно ничего найти не может. Сравнивать нужно естественно не строки целиком а несколько символов из строки. wcsncasecmp не подходит потому что я делаю примерно следующее: dirp = opendir (Database.MusicRoot); if (dirp != NULL) { while (edirp = readdir (dirp)) { if ( !strcmp(edirp->d_name,".") || !strcmp(edirp->d_name,"..") ) continue; ++artistnumber; //just counter of folders //cmpresult=strncasecmp(se_string,edirp->d_name,se_charcounter); cmpresult=wcsncasecmp(se_string,edirp->d_name,se_charcounter); if (cmpresult==0) { se_archednumbers[se_arched]=artistnumber-1; //we have massiv with numbers of found artists, fill element of this massiv ; -1 because massiv starts from 0 element se_arched++; printf("compare\t"); printf("%s\n",edirp->d_name); } } (void) closedir (dirp); } Компилятор ругается на второй аргумент для функции wcsncasecmp , локаль утф-8. Как с этим бороться, или как это обойти, чтобы поиск работал не только для английских, но и для русских файлов?

Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Segmentation fault core dumped (2022)
- Форум fork(), wait() (2014)
- Форум Клиент-Сервер Socket linux (Музыкальный сервис) (2014)
- Форум Языки (2011)
- Форум Язык (2006)
- Форум Язык (2006)
- Форум [переключалка языков] Индикация языка (2009)
- Голосования Ваш любимый язык/языки программирования? (2023)
- Форум Русский язык — язык международного общения (2009)
- Форум Язык сатаны (2015)