我正在尝试将 C-String 转换为所有小写字母,而不使用 ctype.h 中的 tolower 。但是我的代码似乎不起作用:我收到运行时错误。我正在尝试做的是更改大写字母 bij 'a' - 'A' 的 ASCII 值,据我所知,这应该将这些值转换为小写字母。
#include <stdio.h>
void to_lower(char* k) {
char * temp = k;
while(*temp != 0) {
if(*temp > 'A' && *temp < 'Z') {
*temp += ('a' - 'A');
}
temp++;
}
}
int main() {
char * s = "ThiS Is AN eXaMpLe";
to_lower(s);
printf("%s",s);
}