#include <iostream>
#include <string.h>
using namespace std;
////////////////////////////////////////////////////////////////////////////////
///
/// 函数名 const string StringReverseByWord( const string srcString )
/// 功 能 以单词为单位,将字符串倒序;单词间以空格作为分隔符
/// 参 数 const string srcString 需要进行倒序处理的字符串
/// 程序保持实参值不变
/// 所得结果以返回值形式返回
/// 返回值 const string 进行倒序处理所得的结果
///
////////////////////////////////////////////////////////////////////////////////
const string StringReverseByWord( const string srcString )
{
string result;
int pointer = srcString.length() - 1;
int wordBegin , wordEnd , wordLength;
while( pointer >= 0 )
{
while( srcString[ pointer ] == ' ' && pointer >= 0 )
{
result += " ";
pointer--;
}
wordEnd = pointer;
while( srcString[ pointer ] != ' ' && pointer >= 0 )
pointer--;
wordBegin = pointer + 1;
wordLength = wordEnd - wordBegin + 1;
result += srcString.substr( wordBegin , wordLength );
}
return result;
}
int main()
{
cout<< StringReverseByWord( " i am a student " ).c_str() <<"."<<endl;
return 0;
}








