Если вы не возражаете против изменения данных, вы можете просто выполнить некоторую арифметику указателя. Это предполагает, что str является указателем char, а не массивом:
char string[] = "0123456789";
char *str = string;
str += 3; // "removes" the first 3 items
str[4] = '\0'; // sets the 5th item to NULL, effectively truncating the string
printf(str); // prints "3456"