[已解决]c语言,写一个删除字符串中指定字符的程序,调用函数,但是没进入函数

如题,没调用函数就直接输出了,请问是哪里错了呢

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

char delete_aim(char *string, char aim);

int main()
{
    char str[151], Aim = ' ';        //输入字符串和要删除的目标字符

    gets(str);
    getchar(Aim);

    delete_aim(str, Aim);         //调用删除函数

    printf("%s\n", str);             //输出删除后的字符串

    system("pause");
    return 0;
}

char delete_aim(char *string, char aim)
{
    int i, j, len;          //len字符串长度,count删除的字符个数

    len = strlen(string);

    for (i = 0; i < len; i++)
    {
        if (string[i] == aim)      //当第i个字符与目标字符相同时
        {           
            for (j = i; j < len; j++)         
            {
                string[j] = string[j + 1];     //被删除的字符之后的字符依次向前递进一位
            }
            len --;                      //字符串长度-1
            string[len] = '\0';
        }
        for(string[i] = aim)               //当相邻两个字符均为指定目标字符时,重复删除动作
            i--;
    }

    return string;
}

你调用了自己的删除函数之后返回的值没有被保存下来。

图片说明你用的什么编译器 居然不报错

回去电脑上把代码复制给你,现在在外面