C语言中的toupper功能

时间:2014-03-23 22:59:10

标签: c function toupper

#include <stdio.h>
#include <ctype.h>

char* strcaps(char* s)
{
        while (*s != '\0')
        {
                toupper(*s);
                s++;
        }
        return s;
}

int main()
{
        char makeCap[100];
        printf("Type what you want to capitalize: ");
        fgets(makeCap, 100, stdin);
        strcaps(makeCap);
        return 0;
}

这个程序编译得很好,但是当我运行它时,它并没有输出任何东西。我在这里失踪了什么?

3 个答案:

答案 0 :(得分:1)

你没有打印任何东西!

打印toupper()的返回值。

        printf("%c",toupper(*s));

答案 1 :(得分:0)

你不打印任何东西,所以当然它不会输出任何东西。

答案 2 :(得分:0)

char* strcaps(char* s){
    char *p;
    for (p=s; *p; ++p)
        *p = toupper(*p);//maybe you want to change the original
    return s;//your cord : return address point to '\0'
}
...
//main
printf("%s", strcaps(makeCap));