//以下代码含char[]数组和base_string两种实现方式
#include <iostream>
#include <string> //base_string库
#include <cstring> //C语言的string.h库
using namespace std;
char * substr(char *dest, char *src, long head, size_t n)
{
strncpy(dest,&src[head],n);
dest[n] = '\0';
return dest;
}
int main()
{
char cstr_org[32]={"ABCDEFGHIJGKLMNOPQRSTUVWXYZ"};
char cstr_new[32];
string str_org=cstr_org;
string str_new;
//字符数组char[]实现
substr(cstr_new,cstr_org,0,4);//前四个字符
cout<<cstr_new<<endl;
substr(cstr_new,cstr_org,7,4);//中间四个字符(从[7]开始)
cout<<cstr_new<<endl;
substr(cstr_new,cstr_org,strlen(cstr_org)-4,4);//后四个字符
cout<<cstr_new<<endl;
//base_string字符串实现
str_new=str_org.substr(0,4);//前四个字符
cout<<str_new<<endl;
str_new=str_org.substr(8,4);//中间四个字符(从[7]开始)
cout<<str_new<<endl;
str_new=str_org.substr(str_org.length()-4,4);//后四个字符
cout<<str_new<<endl;
return 0;
}
温馨提示:答案为网友推荐,仅供参考