题目 答案 void strmcpy( char *t, int m, char *s ) { int i=0; m = m-1; if(t[m]=='\0') *s=NULL; else { while(t[m]!='\0') { s[i++] = t[m++]; } s[i]='\0'; } } 注意 1.将字符串设为空串时,不应该使用 s=""; 而是应该使用 *s=NULL; 2.一定要将新字符串的最后一个位置赋值为‘\0’,否则在字符串遍历时会丢失一个字母