admin 发表于 2024-3-16 09:47:21

C/C++ 分割字符并返回字符数组实例

//分割字符并返回字符数组
char **GetStrArray(char* s,const char* d)
{               
    char* s采用s=new char;
        strcpy(s采用s,s);
        //计算字符数组个数
        int rows=0;
    char *p采用str=strtok(s采用s,d);
        while(p采用str)
    {        
                rows+=1;
      p采用str=strtok(NULL,d);
        }
        //重新初始二维数据
        char **strArray=new char*;
        for(int i=0;i<rows;i++)
        {
      strArray=NULL;
        }       
        strArray=i2cp(rows);//数组总长度
        //
        int index=1;
        s采用s=new char;
        strcpy(s采用s,s);
    p采用str=strtok(s采用s,d);
        while(p采用str)
    {                        
      char* s采用p=new char;
          strcpy(s采用p,p采用str);
                //添加到二维数组中
      strArray=s采用p;
                //
                index+=1;
      p采用str=strtok(NULL,d);
        }       
        return strArray;
}


char* f采用ext="cun采用xzdw.wl";
char **strArray=GetStrArray(f采用ext,".");
int tlen=atoi(strArray);
ShowMsg(strArray);//表示获取到的cun采用xzdw字符串

//获取不带扩展名的文件名
char* getfilenameNoExt采用lc(char* s,const char* d)
{   
        //获取带扩展名的文件名
       char** strArray;
       char* t采用f采用ext=NULL;
       strArray=GetStrArray(s,"\\");
       int t采用len=atoi(strArray);
       t采用f采用ext=strArray;
    //获取不带扩展名的文件名
       char* t采用fname=NULL;                              
       strArray=GetStrArray(t采用f采用ext,".");
       int arraylen=atoi(strArray);
       if(arraylen>=2)
       {
          t采用fname=strArray;
       }
       return t采用fname;
}


char* Lfilename="d:\\cun采用xzdw.wl";
char* t采用fname=getfilenameNoExt采用lc(Lfilename,"\\");
//t采用fname="cun采用xzdw";
页: [1]
查看完整版本: C/C++ 分割字符并返回字符数组实例