#include <stdio.h>
#include <string.h>
void reverseString_in_place(char* s);
int main(void) {
char str[100];// your code goes here
strcpy(str
, "String reverse in-place demo"); printf("Before string reverse : %s\n", str
); reverseString_in_place(str);
printf(" After string reverse : %s\n", str
);
return 0;
}
void reverseString_in_place(char* s) {
char *p, *q, tmp;
p = s;
while ( p <= q ) {
tmp = *p;
*p = *q;
*q = tmp;
p++;
q--;
}
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdHJpbmcuaD4KCnZvaWQgcmV2ZXJzZVN0cmluZ19pbl9wbGFjZShjaGFyKiBzKTsKCmludCBtYWluKHZvaWQpIHsKCWNoYXIgc3RyWzEwMF07Ly8geW91ciBjb2RlIGdvZXMgaGVyZQoJCglzdHJjcHkoc3RyLCAiU3RyaW5nIHJldmVyc2UgaW4tcGxhY2UgZGVtbyIpOwoJcHJpbnRmKCJCZWZvcmUgc3RyaW5nIHJldmVyc2UgOiAlc1xuIiwgc3RyKTsKCXJldmVyc2VTdHJpbmdfaW5fcGxhY2Uoc3RyKTsKCXByaW50ZigiIEFmdGVyIHN0cmluZyByZXZlcnNlIDogJXNcbiIsIHN0cik7CgkKCXJldHVybiAwOwp9Cgp2b2lkIHJldmVyc2VTdHJpbmdfaW5fcGxhY2UoY2hhciogcykgewoJY2hhciAqcCwgKnEsIHRtcDsKCQoJcCA9IHM7IAoJcSA9IHMgKyBzdHJsZW4ocykgLSAxOwoJd2hpbGUgKCBwIDw9IHEgKSB7CgkgICAgdG1wID0gKnA7CgkgICAgKnAgID0gKnE7CgkgICAgKnEgID0gdG1wOwoJICAgIHArKzsKCSAgICBxLS07Cgl9Cn0K