char* string = "Hello, what's up?";
and I want to just return
"at's up?"
You can write a function. If the function shall not use standard C string functions then it can look for example the following way
char * substr( char *s, size_t pos )
{
size_t i = 0;
while ( i < pos && s[i] ) ++i;
return s + i;
}
As C does not support function overloading then the function above can be also written like
char * substr( const char *s, size_t pos )
{
size_t i = 0;
while ( i < pos && s[i] ) ++i;
return ( char * )( s + i );
}
Here is a demonstrative program.
#include <stdio.h>
char * substr( const char *s, size_t pos )
{
size_t i = 0;
while ( i < pos && s[i] ) ++i;
return ( char * )( s + i );
}
int main(void)
{
char * s = "Hello, what's up?";
puts( substr( s, 9 ) );
return 0;
}
The program output is
at's up?