Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <cstdio>
- #include <cstring>
- void reverse(char * str, int size) {
- for(int i = 0; i < size / 2; ++i) {
- char c = str[i];
- str[i] = str[size - i - 1];
- str[size - i - 1] = c;
- }
- }
- char * reverse_words(char * str) {
- reverse(str, strlen(str));
- char * p = str;
- char * ps = str;
- while(*p) {
- if(*p == ' ' || *p == '\0') {
- reverse(ps, int(p - ps));
- ps = p + 1;
- }
- p++;
- }
- reverse(ps, int(p - ps));
- return str;
- }
- int main() {
- char * words = new char[128];
- strcpy(words, "tests while notebook");
- printf("%s\n", reverse_words((char *)words));
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement