想要删除字符串后面的*,哪里出了问题

#include
int main()
{
    int flag=0;
    char str[100];
    int len=strlen(str);
    char*s=str+len-1;
    //移动到最后一个字符处
    gets(str);
    while(*s=='*')
    {
        *s='\0';
         s--;
    }
    s=str;
    puts(s);
}

gets(str);放到 int len=strlen(str);的前面啊

供参考:

#include<stdio.h>
#include<string.h> //strlen()函数头文件
int main()
{
    int  flag = 0;
    char str[100];
    gets_s(str); //这句移动到这里
    int len = strlen(str);
    char* s = str + len - 1;
    //移动到最后一个字符处
    while (*s == '*')
    {
        *s = '\0';
        s--;
    }
    s = str;
    puts(s);
}