| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 878 人关注过本帖
标题:删除字符窜中特定字符窜的函数
取消只看楼主 加入收藏
xingchi523
Rank: 2
等 级:论坛游民
帖 子:34
专家分:11
注 册:2010-11-6
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:9 
删除字符窜中特定字符窜的函数
#include<stdio.h>
int del_substr(char *str,char *substr);
void main()
{
    char *p="abfsdstrsf";
    char *q="str";
    del_substr(p,q);   
    for(;*p;p++)
        printf("%c",*p);
    printf("\n");

}
int del_substr(char *str,char *substr)
{
    char* head=substr;
    char* end;            //标记源字符窜中紧接着目标字符窜的最后一位置
    int flag=0;
    while(*str++&&*head)
    {
        for(head=substr;*head;head++,str++)
        {
            if(*head==*(str-1))
            {
                flag=1;
                end=str-1;
                continue;
            }
            else
            {
                flag=0;
                break;
            }
        }
    }
    if(!flag)
        return 0;
    else
    {
        str=end+1;
        while(*substr++)        //让str指向和substr相同的第一个字符的位置
            str--;
        while(*str=*end++)        //断点时到这就出错了
        *str='\0';
        return 1;
    }
}


出错:内存不能为written,想知道哪里错了。
搜索更多相关主题的帖子: 函数 字符 删除 
2010-12-05 21:15
xingchi523
Rank: 2
等 级:论坛游民
帖 子:34
专家分:11
注 册:2010-11-6
收藏
得分:0 
来个人给看看呗
2010-12-05 21:31
xingchi523
Rank: 2
等 级:论坛游民
帖 子:34
专家分:11
注 册:2010-11-6
收藏
得分:0 
别落下去啊,落下去就没人看了。。。
大家给找找错吧
2010-12-05 22:35
xingchi523
Rank: 2
等 级:论坛游民
帖 子:34
专家分:11
注 册:2010-11-6
收藏
得分:0 
再顶一下,希望明天看时有人解答了。。。
2010-12-05 23:15
xingchi523
Rank: 2
等 级:论坛游民
帖 子:34
专家分:11
注 册:2010-11-6
收藏
得分:0 
来个人给看看行不行。。。。
2010-12-06 12:39
xingchi523
Rank: 2
等 级:论坛游民
帖 子:34
专家分:11
注 册:2010-11-6
收藏
得分:0 
回复 7楼 小J
功能是删除字符窜,前面是看源字符窜中有没有目标字符窜,没有返回零,有则返回1并删除,再把后面的字符补上来
2010-12-06 18:45
xingchi523
Rank: 2
等 级:论坛游民
帖 子:34
专家分:11
注 册:2010-11-6
收藏
得分:0 
回复 6楼 vandychan
实现不了想要的功能,函数的功能是删除字符窜,先判断元字符窜中是否含有目标字符窜,若没有返回零;若有返回1并删除(即将源字符窜中和目标字符窜相同的 后面的字符 覆盖在 前面和目标字符窜相同 的字符窜上)
2010-12-06 18:50
xingchi523
Rank: 2
等 级:论坛游民
帖 子:34
专家分:11
注 册:2010-11-6
收藏
得分:0 
给找找错,或者给个有这个功能的函数学习一下也行啊
2010-12-06 20:04
xingchi523
Rank: 2
等 级:论坛游民
帖 子:34
专家分:11
注 册:2010-11-6
收藏
得分:0 
自己找到了函数,但不知道自己错哪里了。。。哎,大家都不给解决呀
2010-12-06 23:23
xingchi523
Rank: 2
等 级:论坛游民
帖 子:34
专家分:11
注 册:2010-11-6
收藏
得分:0 
自己找到错了,定义字符窜时应该用数组(char *p="asdf"改为char p[]="asdf");指针指向的东西在常量区,不能写,得用数组
2010-12-07 12:29
快速回复:删除字符窜中特定字符窜的函数
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022675 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved