zoukankan      html  css  js  c++  java
  • [转载]c删除字符串中指定字符

    #include <stdlib.h>
    #include <stdio.h>
    #include <string.h>
    int del_char(char* src, char c)
    {
            if ( NULL == src)
            {
                    fprintf(stderr, "del_char failed: invalid input./n");
                    return -1;
            }
            char* pchTemp = (char*)malloc(strlen(src) + 1);
            if ( NULL == pchTemp)
            {
                    fprintf(stderr, "del_char failed: malloc failed/n");
                    return -1;
            }
            int num = 0;
            int i = 0;
            int j = 0;
            while ( src[i] != '/0')
            {
                    if ( src[i] != c)
                    {
                pchTemp[j++] = src[i++];
                    }
                    else
                    {
                            i++;
                            num++;
                    }
            }
            pchTemp[j] = '/0';
            if ( 0 != num)
            {
                    strncpy(src, pchTemp, strlen(pchTemp) + 1);
            }
            free(pchTemp);
            return num;
    }
    int main(int argc, char* argv[])
    {
            if ( 3 != argc)
            {
                    fprintf(stderr, "Usage: %s [src] [c]/n", argv[0]);
                    return -1;
            }
            char szSrc[512] = {0};
            snprintf(szSrc, sizeof(szSrc), "%s", argv[1]);
            char c = argv[2][0];
            int num = 0;
            if ( (num = del_char(szSrc, c)) < 0)
            {
                    return -1;
            }
            else
            {
                    printf("num: %d after del %c: %s/n", num, c, szSrc);
                    return 0;
            }
            return 0;
    }
  • 相关阅读:
    DES加密/解密类。
    断言与单元测试
    空对象模式和扩展方法的NULL验证
    防御性判断
    行为型-观察者模式、基于事件的观察者
    【Python学习日记】B站小甲鱼:继承,super和多重继承
    【Python学习日记】B站小甲鱼:类和对象
    【Python学习日记】B站小甲鱼:图形界面入门easygui
    【Python学习日记】B站小甲鱼:丰富的else语句
    【Python学习日记】B站小甲鱼:永久储存(pickle模块)和异常处理(exception)
  • 原文地址:https://www.cnblogs.com/fx2008/p/2190503.html
Copyright © 2011-2022 走看看