C++編程語言是一個功能強大,應用方式靈活的編程語言。我們今天會在這篇文章中為大家詳細講解一下有關C++字符串分割函數的應用方式,以方便大家將來在實際中的應用,提高自己的編程效率。
鑒於在C++中沒有可以用一個字符串來分割字符串的函數,所以特意寫了一個C++字符串分割函數方便大家:
其中str1是要分割的字符串,str2是用來分割的字符串。
- CString* GetStr(CString str1, CString str2, int &num)
- {
- int long1=str1.GetLength();
- int long2=str2.GetLength();
- int sign=0;
- char*ch1=new char[long1];
- char*ch2=new char[long2];
- strcpy(ch1,str1);
- strcpy(ch2,str2);
- int i=0,j=0;
- while(1)
- {
- if(j==long1)break;
- if(ch1[j]==ch2[i])
- {
- ++j;
- ++i;
- ++sign;
- if(sign==long2)
- {
- i=0;
- sign=0;
- ++num;
- }
- }
- else
- {
- j++;
- sign=0;
- }
- }
- num++;
- //num++;
- i=0;
- j=0;
- sign=0;
- CString*str=new CString[num];
- int begin=0,end=0;
- int n=0;
- while(1)
- {
- if(j==long1)
- {
- //n++;
- for(int k=begin;k<long1;k++)
- {
- str[n]+=ch1[k];
- }
- break;
- }
- if(ch1[j]==ch2[i])
- {
- ++j;
- ++i;
- ++sign;
- if(sign==long2)
- {
- i=0;
- sign=0;
- end=j-long2;
- for(int k=begin;k<end;k++)
- {
- str[n]+=ch1[k];
- }
- begin=j;
- n++;
- }
- }
- else
- {
- j++;
- sign=0;
- }
- }
- return str;
- }
以上就是對C++字符串分割函數的相關操作的介紹。