/*
目的:完成从一个字符串*src,拷贝前n个字符到另一个字符数组*dest中
*/
#include <stdio.h>
#include <malloc.h>
目的:完成从一个字符串*src,拷贝前n个字符到另一个字符数组*dest中
*/
#include <stdio.h>
#include <malloc.h>
void mystrcpy(char *src , int length , char *dest)
{
int len = 0;
{
int len = 0;
while(*src != '\0' && len < length)
{
*dest++ =*src++;
len++;
}
*dest = '\0'; //这里还是要加'\0'的,因为while循环里碰到'\0'就结束了
{
*dest++ =*src++;
len++;
}
*dest = '\0'; //这里还是要加'\0'的,因为while循环里碰到'\0'就结束了
}
int main(void)
{
char *src = "chenqinskdfjl";
char *dest;
int main(void)
{
char *src = "chenqinskdfjl";
char *dest;
dest = (char *)malloc(100);
mystrcpy(src , 5 , dest);
printf("dest = %s\n" , dest);
free(dest);
dest = NULL;
mystrcpy(src , 5 , dest);
printf("dest = %s\n" , dest);
free(dest);
dest = NULL;
return 0;
}
}
/*
结果:拷贝了*src字符串中的前5个字符到*dest中
以下是VC++6.0的运行结果:
_____________________________________
dest = chenq
Press any key to continue
_____________________________________
*/
结果:拷贝了*src字符串中的前5个字符到*dest中
以下是VC++6.0的运行结果:
_____________________________________
dest = chenq
Press any key to continue
_____________________________________
*/