how to invert string in c language

how to invert string in c language
ref‮‬er to:lautturi.com
#include <stdio.h>

void rev(char *str)
{
	char *r_ptr = str;
	while (*(r_ptr + 1) != '\0')
		r_ptr++;

	while (r_ptr > str)
	{
		char tmp = *r_ptr;
		*r_ptr-- = *str;
		*str++ = tmp;
	}
}

void main()
{
	char s[] = "Hello World!";
	rev(s);
	puts(s); //  !dlroW olleH
}
Created Time:2017-08-29 10:23:37  Author:lautturi