2011/10/13

[C++]取出字串中的單字


#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
    //取出字串中的單字,其中單字與單字間以一個或數個空白隔開
    string str;
    string Temp = "";
 
    cout << "請輸入一段文字:";
    getline(cin,str);
    str = str + " "; //加入空白讓取值時判斷是否到達字串邊界
 
    for(int i=0; i<str.length(); i++)
    {
        if(str[i] != ' ')
        {
            Temp = Temp + str[i];
        }
        else if((str[i] == ' ')&&(str[i+1] != ' ')) //抓到最後一個空白才輸出
        {
            cout << Temp << endl;
            Temp = ""; //清空Temp的值讓迴圈進行下一次取新的值
        }
    }
 
    system("PAUSE");
    return EXIT_SUCCESS;
}