可以这样设计函数首部:
void strSubcpy(const char a[], char b[], int k)。
也可:
void strSubcpy(const char *a, char *b, int k)。
主函数中可以这样测试:
…
int main()
{
char str1[50] = "I study C very hard!";
char str2[50] = "C++ very hard!";
strSubcpy(str1, str2, 9);
cout<<str1<< endl;
cout<<str2<< endl;
return 0;
}
代码如下,结果已验证:
#include <iostream>
using namespace std;
void strSubcpy(char *a,const char *b, int k)
{
a = a+k-1;
while(*b!='\0'){
*a=*b;
a++;
b++;
}
}
int main()
{
char str1[50] = "I study C very hard!";
char str2[50] = "C++ very hard!";
strSubcpy(str1, str2, 9);
cout<<str1<<endl;
cout<<str2<<endl;
return 0;
}
运行结果:
I study C++ very hard!
C++ very hard!