天梯赛中的字符串的一些函数记录

12 篇文章 1 订阅
5 篇文章 0 订阅

string的find()函数

string s , target;
cin >> s >> target;
s.find(target);

如果find函数没找到target,返回的是string::npos,所以if语句应该写成
if(s.find(target) != string::npos){		//意思是找到了target
	
}
//或者写成
if(s.find(target) != -1){		//意思是找到了target
	
}
//然后找到了target返回的是target第一个字母在s中的位置下标

ps: vector、map和set<>s 这个容器也有find函数,如果没找到返回的是s.end() ,数组也有find函数,没找到返回的是指向末尾的指针

string的erase()函数

string s = "1221";
s.erase(0 , 2);  //意思是从s的第0个字符开始数2个字符删除
cout << s; //输出为21

string的replace()函数

s.replace(i , k , target) 
// 将s中从第i个字符开始往后数k个字符删除并替换为target

char的isdigit()函数

char x;
cin >> x;
isdigit(x);
 // 意思是判断x字符是不是一个十进制的数字,是则返回1,					反之返回0

char的toupper(),tolower()函数

string s;
cin >> s;
for(int i = 0; i < s.size(); ++i){		//将s转为大写,tolower则是转为小写
	if(toupper(s[i])){		
		s[i] = toupper(s[i]);
	}
}
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值