c语言字符串从第m个位置开始复制

/*
有一字符串,包含n个字符。
写一函数,将此字符串中从第m个字符开始的全部字符复制成为另一个字符串
*/
#include <stdio.h>
#include <malloc.h>

char *strmcpy(char *a, int m)
{

  char *s = a ;
  char *b = (char *)malloc(sizeof(char *));
  int i = 0;
  while(*(s+m+i-1) )
  {
    *(b+i) = *(s+m+i-1);
    i++;
  }
  return b;

}

int main()
{
  char *a = (char *)malloc(sizeof(char *)); 
  printf("请输入一个字符串:");
  gets(a);

  int m;
  printf("请输入要从第几个字符开始复制:");
  scanf("%d",&m);

  char *b = strmcpy(a,m);
  printf("复制后的字符串为:%s\n",b);

  return 0;
}

猜你喜欢

转载自www.cnblogs.com/jin19970718/p/12456740.html