#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void strdev (char *str, long from, long to)
{
char *part1 = malloc(strlen(str) - strlen(&str[from]));
// long i;
part1[from] = '\0';
//for(i=0; i<from; i++) part1[i] = str[i]; // Old copying
memmove(part1, str, from); // New copying
sprintf(str, "%s%s", part1, &str[to+1]);
free(part1);
}
int main(void) {
char* hw = "Hello World!";
fprintf(stdout, "%s\n", hw);
strdev(hw, 7, 12);
fprintf(stdout, "%s\n", hw);