Увеличил размер кучи, теперь с выделением памяти проблем нет.
Есть еще одна не понятная проблема. Для проверки расширения файла использую процедуру:
Код
int extcheck(char *s, char *match)
{
char tmp[5];
uint8_t i;
if(strlen(s) > 3)
{
strncpy(tmp, s + strlen(s) - 4, 4);
tmp[4] = 0;
tolower(*tmp);
if(strcmp(tmp, match) == 0)
return 1;
}
return 0;
}
Проблема в функции tolower. Не хочет она переводить символы из верхнего регистра в нижний. Пробовал вместо
Код
tolower(*tmp);
и так:
Код
for(i = 0; i < 4; i++)
tolower(tmp[i]);
тоже не работает. В чем может быть проблема?