利用指针实现字符串复制

#include
void mystrcpy(char* ptr1, const char* ptr2)
{
	while (*ptr2 != '\0')
	{
		*ptr1 = *ptr2;
		ptr1++;
		ptr2++;
	}
	*ptr1 = '\0';
}
int main()
{
	char a[80], b[80];
	printf("enter string\n");
	gets_s(a);
	printf("the copy is:\n");
	mystrcpy(b, a);
	puts(b);
	return 0;
}

先定义一个函数,实现字符串的复制功能,const是用来修饰的,使其更加稳定,*ptr2是待复制的数组的指针,只要它指向的元素不等于'\0',也就是结束标志,会一直循环,把*ptr2的值赋给*ptr1,然后指针自增,实现移动,在循环结束之后,*ptr1='\0',是结束标识符。

gets_s是更加常用的输入,能不用gets尽量不要用。

以上,希望对你有所帮助。

你可能感兴趣的:(算法竞赛,c++,c语言,算法)