C函数删除所有大写字符

Syn*_*ror 2 c string char uppercase

我需要在C中有效地实现一个函数,它将被赋予一个char [],它将从中删除所有大写字符,返回所有内容.例如,如果给予HELLOmy_MANname_HOWis_AREjohn_YOU__

它应该回来 my_name_is_john__

这不是一个很容易成为一个HW,但它在我的时区凌晨2点,我认为这将是我现在在代码中遇到的问题的解决方案!

欢迎任何帮助!干杯!=)

Pey*_*man 10

也许这个?

i = j = 0;
while (s[i] != '\0') {
        if (!isupper(s[i]) 
                t[j++] = s[i];
        i++;
}
t[j] = '\0';
Run Code Online (Sandbox Code Playgroud)

  • 你需要在循环之后执行`t [j] ='\ 0';`(因为你没有在NUL上进入循环体). (2认同)