问题遇到的现象和发生背景
C语言写了一个利用ctype.h头中tolower()函数把字符串中所有大写字母转为小写的函数,无法实现。
问题相关代码
char * Tolower(const char * src)
{
char * dest = NULL;
while (*src)
{
*dest = tolower(*src);
src++;
dest++;
}
*dest = '\0';
return dest;
}
运行结果及报错内容
不报错。但程序结束异常,返回3221225477。
我的解答思路和尝试过的方法
在网上搜了搜,大多说是野指针的问题,我试着初始化为空指针还是不行。
我想要达到的结果
预计结果
类似于
printf("%s", Tolower("aBcDeFg"));
参数不可修改,把字母转换小写后赋给dest然后返回。
希望大家能够帮助我,多谢。