写一函数,将某字符串(长度小于255)中从第m个字符开始的全部字符复制成为另一个字符串。在主函数中输入字符串,并输出结果。
#include <iostream>
#include <string>
using namespace std;
void mcopy(string& dest, const string& src, int m) {
if (m <= 0 || m > src.length()) {
dest = "nullstring";
} else {
dest = src.substr(m - 1);
}
}
int main() {
string str, sub;
int m;
cin >> str >> m;
mcopy(sub, str, m);
cout << sub << endl;
return 0;
}
这个C语言版本的
#include <stdio.h>
#include <string.h>
int add(char *addr,char *adds,int len,int a)
{ int i=0;
if(a > len)
{
return 0;
}
for(i=0;i<len-a;i++)
{
adds[i] = addr[i+a-1];
}
}
int main()
{
char addr[255]="abcdefg";
char adds[255]={};
int a,b;
printf("输入数字\n");
scanf("%d",&a);
b=add(addr,adds,strlen(addr),a);
if(b > 0)
{
printf("%s\n",adds);
}
else
{
printf("nullstring\n");
}
}