指针写函数
一个包含n个字符的字符串,写一个函数,把一个字符串*的第m个字符开始复制另外一个字符串。
写了个函数,为什么输出时乱码的?
程序代码:/****************************************************
*指针,一个包含n个字符的字符串,写一个函数,把一个字符串
*的第m个字符开始复制另外一个字符串。
****************************************************/
#include"stdio.h"
#include"stdlib.h"
#include"string.h"
char* strmcopy(char *str, int m)
{
int len;
char *temp,*str1;
str1=(char *)malloc(20);
len=strlen(str);
temp=str+len-m; //指向第m个地址
while(*temp!='\0')
{
*str1++=*temp; //复制
temp++;
}
return str1;
}
int main()
{
char *str,*str1;
int n,m;
str=(char *)malloc(20);
n=10;
printf("输入包含n=%d个字符的字符串str\n",n);
scanf("%s",str);
printf("输入开始复制的个数m (m<n)\n");
scanf("%d",&m);
str1=strmcopy(str,m);
printf("%s\n",str1);
system("pause");
return 0;
}








