void reverse_str(char* str, int size)
{
if (NULL == str)
return;
if (1 >= size)
return;
char* start = str;
char* end = str + size -1;
for(int i = 0;i < size/2;i++) {
char tmp = *(start + i);
*(start + i) = *(end - i);
*(end - i) = tmp;
}
}
void ReverseWords(char* str)
{
if (NULL == str) return;
int start = -1;
int end = -1;
//Split words in sentence first
int size = strlen(str);
for (int i = 0;i < size;i++) {
if (-1 == start &&
' ' != *(str + i)) {
start = i;
}
if((' ' == *(str + i) || '\0' == *(str + i)) &&
-1 != start) {
end = i - 1;
reverse_str(str + start, end - start + 1);
start = -1;
end = -1;
}
}
}
int _tmain(int argc, _TCHAR* argv[])
{
char source[] = "What a beautiful girl";
ReverseWords(source);
return 0;
}
反转句子中的单词
最新推荐文章于 2023-12-21 19:44:11 发布