24小时热门版块排行榜    

查看: 240  |  回复: 1

zhaowengen

木虫 (小有名气)

[求助] 为什么这个程序会发生运行时错误?

#include <stdio.h>

#define NULL        0
#define FALSE        0
#define TRUE        1

char * match(char * str, char * want)
{
        while(*want != '\0')
        {
                if(*str++ != *want++)
                        return NULL;
        }

        return str;

}

int del_substr(char * str, char const * substr)
{
        char * next = NULL;

        while(*str != '\0')
        {
                next = match(str, (char *)substr);
               
                if(next != NULL)
                        break;
               
                str++;       
        }

        if(*str == '\0')
                return FALSE;
       
        while(*str++ = *next++)
                ;

        return TRUE;
}

int main(void)
{
        char * str = "ABCDEFG";
        char * substr = "CD";
        int val = 0;

        val = del_substr(str, substr);

        printf("%s\n", str);

        return 0;
}
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhaowengen

木虫 (小有名气)

已想明白~~
2楼2015-08-21 10:58:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 zhaowengen 的主题更新
信息提示
请填处理意见