分割字符數組 c++

c++中,將一個大的字符數組分割爲小的字符數組:

#include <iostream>

#include <string>
 using namespace std;
void main()
{char str[] = "1------小+-----15軟件10班------男------15335691------"; /*待分隔的原字符串*/    
        char seg[] = "------"; /*分隔符這裏爲逗號comma,分隔符可以爲你指定的,如分號,空格等*/  
        char charlist[50][50]={""}; /*指定分隔後子字符串存儲的位置,這裏定義二維字符串數組*/  
        int i =0;  
        char *substr= strtok(str, seg); /*利用現成的分割函數,substr爲分割出來的子字符串*/  
        while (substr != NULL) {    
                strcpy(charlist[i],substr); /*把新分割出來的子字符串substr拷貝到要存儲的charlsit中*/  
                i++;  

       cout<<substr<<endl;

                substr = strtok(NULL,seg); /*在第一次調用時,strtok()必需給予參數str字符串, 往後的調用則將參數str設置成NULL。每次調用成 功則返回被分割出片段的指針。*/  
        }   

//也可以這樣輸出數組

cout<<charlist[2]<<endl;

}

發佈了44 篇原創文章 · 獲贊 15 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章