字符串操作(2)----取子串

取子串操作:输入字符串、起始位置、字串长度,输出子串的内容。
这里使用最原始的方法,即一个字符一个字符的复制。
分析:
(1)读入所需参数:原字符串a,子串的起始位置start,子串的长度len。
(2)用字符串ans表示所求的子串。
(3)用循环变量i表示当前要复制原字符串中哪个字符。
(4)让i从start循环到start+len-1,把a[i]复制到ans[i-start]的位置上。
(5)由于ans的长度为len,所以最后让ans[len]=‘\0’,用空字符结尾。

C++代码实现如下:

#include<iostream>
#include<cstring>
using namespace std;
char *Substr(char *a,int strat,int len);
const int maxlen=100;//定义字符串最大长度
char *Substr(char *a,int start,int len){//取子串函数
	char *ans=new char[maxlen];
	for(int i=start;i<start+len;i++)
	//把a中从start开始长度为len的这一段数组元素赋值到字符串ans中
		ans[i-start]=a[i];
	ans[len]='\0';
	return ans; 
}
int main(){
	char a[maxlen];
	int start,len;
	cin>>a;//输入原字符串 
	cin>>start;//输入起始位置 
	cin>>len;//输入子串长度 
	cout<<Substr(a,start,len)<<endl;
	return 0;
} 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值