题目:将一段字符串中的每个英文单词首字母大写。
输入:cat is one of my favourite.
输出:Cat Is One Of My Favourite.
void ToUpperWord(char * str)
{
char * str_split; //存储每次分割后生成的字符串
str_split = strtok(str, " "); //第一次调用第一个参数是字符串指针
while (str_split != NULL) //如果分割完成strtok()返回NULL
{
cout << (char)toupper(str_split[0]) << str_split + 1 << " "; //进行首字母大写并输出
str_split = strtok(NULL, " "); //第二次及之后的调用第一次参数为NULL
}
}
Sample from C++ Reference:
函数原型:char * strtok ( char * str, const char * delimiters );
官方文档解释