Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1182540
  • 博文数量: 252
  • 博客积分: 5421
  • 博客等级: 大校
  • 技术积分: 2418
  • 用 户 组: 普通用户
  • 注册时间: 2007-06-17 12:59
文章分类

全部博文(252)

文章存档

2017年(3)

2016年(18)

2015年(31)

2014年(18)

2013年(7)

2012年(8)

2011年(12)

2010年(30)

2009年(32)

2008年(57)

2007年(36)

分类: C/C++

2010-08-22 14:13:09

#include <stdio.h>

static void merge_slashes(char *);

int main()
{
    char *str = "/////flynetcn\\/\\\\\\//fei///";
    printf("%s\n", str);
    merge_slashes(str);
    printf("%s\n", str);
    return 0;
}


static void merge_slashes(char *str)
{
    int left = 0, right = 0;
    int saw_slash = 0;

    if (!str) {
        return;
    }
    while (str[right] != '\0') {
        if (saw_slash) {
            if (str[right]=='/' || str[right]=='\\') {
                right++;
            } else {
                saw_slash = 0;
                str[left++] = str[right++];
            }
        } else {
            if (str[right]=='/' || str[right]=='\\') {
                saw_slash = 1;
                str[left++] = '/';
            } else {
                str[left++] = str[right++];
            }
        }
    }
    str[left] = '\0';
}


阅读(1787) | 评论(1) | 转发(0) |
0

上一篇:GNU binutils笔记

下一篇:指向结构的指针

给主人留下些什么吧!~~

chinaunix网友2010-08-25 10:42:49

Download More than 1000 free IT eBooks: http://free-ebooks.appspot.com