写一函数,将某字符串(长度小于255)中从第m个字符开始的全部字符复制成为另一个字符串。在主函数中输入字符串,并输出结果。

写一函数,将某字符串(长度小于255)中从第m个字符开始的全部字符复制成为另一个字符串。在主函数中输入字符串,并输出结果。

img

img


#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");
   }
}