教えて

char MyStrMid( char buff[], const char string[], int pos, int len )
{
 char *dest = buff;
 
 if ( pos < strlen(string) ){
  for ( string += pos ; len > 0 ; len-- ){
   if ( *string == '\0' ){
    break;
   }
   *dest++ = *string++;
  }
 }
 *dest = '\0';
 return( buff );
}

っていうプログラムを教えてGooで見つけました。
MIDができる関数なんだけど、
const char stringで宣言しているのに
*string++ しているので、stringの中身を変更しないで
この関数を使いたいんだけど、どうしたらいいんでしょう?