C++でstringクラスを用いた文字列分解プログラムを書いているのですが
分解は成功しているようなのですが2つめ以降の分解した結果が表示されなくて
行き詰まってしまいました。
この原因がわからないので皆さんのお力をお借りしたいと思います
どうかよろしくお願いします。
#include<iostream.h>
#include<string>
int explode(string kugiri, string t, string result[100]);//関数のプロトタイプ宣言
main(){
string t = "http://www.aichi-edu.ac.jp/intro/index.html"; //分割用文字列
string result[100];// 分割後の文字列格納用配列
string kugiri = "/";// セパレータ
cout <<"文字列を指定された区切り文字毎に分解するプログラムです。\n文字列「http://www.aichi-edu.ac.jp/intro/index.html」"<<endl;
int n = explode(kugiri, t, result);//関数呼び出し
cout << n << "個に分割されました\n"<<endl;
return 0;
}
int explode(string kugiri, string t, string result[]){
string::size_type index; //結果を代入する変数
int length = t.length();
for(int i=0 ; i<100 ; i++){
index = t.find(kugiri);
if(index == string::npos){ //もしセパレータが見つからなければ
break;
}
result[i] = t.substr(0, index);
cout<<"["<<i<<"]"<<result[i]<<endl;
t = t.substr(index+length);
}
return 0;
}