#include<string.h>
#include<iostream>
using namespace std;
void reverse(char * str, int start, int end) {
while(start < end) {
char tmp = *(str + start);
str[start++] = str[end];
str[end--] = tmp;
}
}
void reverse_words(char * str) {
int start = 0;
int end = 0;
int len = strlen(str);
start = 0;
for (int i = 0; i <= len; i++) {
if( *(str + i) != ' ' && *(str + i) != 0){
continue;
}
end = i - 1;
reverse(str, start, end);
start = i + 1;
}
}
int main()
{
char str[] = "This is a string to be reversed";
std::cout<<"\n The original string is : " << str;
reverse_words(str);
std::cout <<"\n The string after reversing is : " << str;
std::cout<<"\n";
return 0;
}
#include<iostream>
using namespace std;
void reverse(char * str, int start, int end) {
while(start < end) {
char tmp = *(str + start);
str[start++] = str[end];
str[end--] = tmp;
}
}
void reverse_words(char * str) {
int start = 0;
int end = 0;
int len = strlen(str);
start = 0;
for (int i = 0; i <= len; i++) {
if( *(str + i) != ' ' && *(str + i) != 0){
continue;
}
end = i - 1;
reverse(str, start, end);
start = i + 1;
}
}
int main()
{
char str[] = "This is a string to be reversed";
std::cout<<"\n The original string is : " << str;
reverse_words(str);
std::cout <<"\n The string after reversing is : " << str;
std::cout<<"\n";
return 0;
}