C语言:求出从键盘输入的字符串的实际长度,字符串中可以包含空格,跳格等,但回车结束符不计入.

正确的输出应该是:"abcd efg" 长度为8.
如何更改此程序?

#include<stdio.h>
int len(char s[]);
main()
{
    char s[20];
    gets(s);
    printf("%s   %d",s,len(s));
}
int len(char s[])
{
    char *p=s;
    while(*p!='\0')  /* *p!='\0' 是用指针所指向的内容和结束符相比*/
        p++;
    return p-s;
}

温馨提示:答案为网友推荐,仅供参考
相似回答