Search code examples
ctolower

tolower() not working


The below code snippet is used to convert a string to lower case.

int main()
{
    unsigned char s[] = "AbS.d_";

    tolower(s);
    printf("%s\n", s);

    return 0;
}

I am getting the output as:

AbS.d_

Why the string is not being converted?


Solution

  • tolower takes int and return lowered int.

    This should work:

    int i=0;
    for(i=0; s[i]; i++)
    {
        s[i]=tolower(s[i]);
    }