//函数将句子中的每个单词的首字母改为大写
string first_letter(string& sentence)
{
//定义string 指针,并指向string 首地址
string::iterator it=sentence.begin ();
//定义 关键 标志,反映检测到空格字符
bool space_flag=true;
//string 指针未到字符串尾,程序循环。
while(it!=sentence.end())
{
//第一次循环指针指向单词首字母,space_flag=true。
if(isalpha(*it) && space_flag) //修改条件:指针指向的是字母,指针通过了空格字符。
{
//单词首字母改为大写
*it=toupper(*it);
//标志 false,不满足修改条件,避免将单词其他字母改为大写
space_flag=false ;
}
//指针通过了空格字符,修改space_flag标志
if(isspace(*it))
{
space_flag=true;
}
it++; //指向下一字符
}
cout<<"in function : "<<sentence<<endl;
return sentence;
}