文字列を2次元配列token[100][100]
に分割するプログラムを作成しようとしていました。それは文字列全体を別々の単語に分割しますが、単語をピリオドに渡すたびにtoken[i++][j]
する必要があります。これまで私はこれを持っています。文字から文字列を分割する
#include <iostream>
#include <istream>
#include <string>
#include <sstream>
#include <vector>
#include <algorithm>
using namespace std;
int main()
{
string code;
getline(cin, code);
string codef[100];
string token[100][100];
int j = 0, i=0;
for (i = 0; i < 2; i++) {
stringstream ssin(code);
while (ssin.good() && j < 4) {
ssin >> token[i][j];
++j;
if (token[i][j] == ".") {
break;
}
}
}
for (i = 0; i < 4; i++) {
for (j = 0; j < 4; j++) {
cout << token[i][j] << endl;
}
cout << endl;
}
return 0;
}
それは別の文字列をチェックし、ので、私はそれが時間の前にスペースを入れてする必要があります行っている方法で、あなたの束のような場合はその期間:「こんにちは。」それは明らかにそれを認識しません。私はそれが起こることを望んでいない、この作品を作る良い方法はありますか?今は文章を2文と4文(文章あたり4語)に制限しています。