尝试在C 中编写Pig Latin程序,我无法将字符串的单个单词纳入CSTRING中,无法编辑



该程序应该在文件的行中读取,然后用语句的英语版本和猪拉丁版本来读取。然后继续直到文件完成。

我遇到的麻烦是我认为我无法弄清楚如何将字符串的每个单词输入CSTRING进行编辑。

int main()
{
    ifstream inFile;
    inFile.open("ASSGN8-A.txt");
    char myCString[12], pigLatin[12];
    string myString;
    char letter;
    bool eof = false;
    do
    {
        std::getline(inFile, myString);
        cout << "English: " << myString << endl;
        cout << "Pig Latin: ";
        if (myString == "")
        {
            myCString = myString;
            letter = myCString[0];
            for (int i = 0; i < 12; i++)
            {
                pigLatin[i] = myCString[i+1];
            }
            cout << pigLatin << "ay";
        }
        if(inFile.eof())
        {
            eof = true;
        }
    }while (!eof);
}

您可以使用下面的方法将字符串分为单词:

vector<string> words;
istringstream n(myString);
string word;
while(getline(n, word, ' ')) words.push_back(word);

最新更新