#include <iostream>
#include <cstring>
using namespace std;
void reverse(char* sentence)
{
int index = strlen(sentence) - 1;
char last = '\0';
int hold = 0;
while ( index != 0){
while (sentence[index] != ' ')
index--;
hold = index; //keeps the index of whitespace
while (sentence[index] != last){
cout << sentence[index]; //printing till it either hits end character or whitespace.
index++;
}
last = sentence[hold]; //Keeps the whitespace
index = hold; //
}
}
int main()
{
char* sentence = new char[256];
cin.getline(sentence, 256);
reverse(sentence);
}
文中の単語の順序を逆にしたいのですが、上の私の試みを見ることができます。
サンプルの入力と出力は次のようになります。
Howdy Mr. Mcfly?
Mcfly? Mr. Howdy
私が得る場所:
Howdy Mr. Mcfly?
Mcfly?
インターネット上には同様の質問がたくさんありますが、私が欲しいのは自分のコードでエラーを見つけることです。