Форум программистов, компьютерный форум CyberForum.ru

tolower crush - C++

Восстановить пароль Регистрация
 
vvApache
5 / 5 / 0
Регистрация: 08.05.2011
Сообщений: 121
08.07.2012, 14:50     tolower crush #1
Использование tolower крашит мою программу, только если каждый экземпляр не открыт и не отлаживается через Visual Studio.
C++
1
2
3
4
locale loc;
for (size_t i=0; i<conns[0].length(); ++i) {
conns[0][i]=tolower(conns[0][i],loc);
}
В чем может быть проблема?

Необработанное исключение в "0x77d9e3fb" в "vfs_client.exe": 0xC0000005: Нарушение прав доступа при записи "0x00000000".
Стек вызовов содержит много повторений слова locale, возможно проблема в нём?


vfs_client.exe!std::tolower<char>(char _Ch, const std::locale & _Loc) Строка 255 + 0x10 байт C++

vfs_client.exe!std::use_facet<std::ctype<char> >(const std::locale & _Loc) Строка 516 + 0x10 байт C++

msvcp100d.dll!std::ctype<char>::_Getcat(const std::locale::facet * * _Ppf, const std::locale * _Ploc) Строка 2377 C++

> msvcp100d.dll!std::_Locinfo::~_Locinfo() Строка 95 + 0x1e байт C++

msvcp100d.dll!std::_Yarn<char>::~_Yarn<char>() Строка 3367 C++

msvcp100d.dll!std::_Yarn<char>::_Tidy() Строка 3395 + 0xe байт C++

msvcr100d.dll!_free_dbg(void * pUserData, int nBlockUse) Строка 1265 + 0xd байт C++

msvcr100d.dll!_free_dbg_nolock(void * pUserData, int nBlockUse) Строка 1431 + 0x9 байт C++

msvcr100d.dll!_free_base(void * pBlock) Строка 50 + 0x13 байт C

kernel32.dll!757714dd()

00000001()

msvcr100d.dll!_unlock(int locknum) Строка 375 C

[Указанные ниже фреймы могут быть неверны и (или) отсутствовать, символы для ntdll.dll не загружены]

ntdll.dll!77d9e3fb()

Добавлено через 19 минут
p.s. причем использую tolower для латинских символов, а не для русских

Добавлено через 48 минут
p.p.s да, надо было убрать locale куда подальше.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.07.2012, 14:50     tolower crush
Посмотрите здесь:

C++ Функции tolower,islower,isupper
C++ функция tolower()
Как реализовать tolower()? C++
true db grid - CRUSH!!! Почему? C++
C++ toupper, tolower, strlen и кириллица
C++ Tolower для русских букв
C++ Заменить функцию tolower на ручную функцию
C++ Найти первые вхождения символов (функции strchr(), tolower())

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 04:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru