db2 replace函数的用法_C++常用函数整理
1、s.c_str();
C语言中没有string类型,C语言接口函数(例:strstr())的string需要转char*。
用法:string转char*:c_str()
2、strstr(str1.c_str(),str2);
C语言中的函数,在字符串中查找另一个字符串是否存在,不存在返回false,存在返回true。
char * strstr(const char *str1, const char *str2);
用法:strstr()
3、s.replace(pos, len, str);
用str来替换下标从pos开始替换长度为len的子串。
用法:replace()
4、s.at(i);
定位字符串string类型中字符。等价于char*类型中的s[i]。
5、s.substr(pos,n);
截取s中从pos开始(包括0)的n个字符的子串,并返回。n可不写,默认截取s中从从pos开始(包括0)到末尾的所有字符的子串,并返回。
字符串常见函数
6、rand()%n,srand((int)time(0));
#include <cstdlib>
#include <ctime>
srand((int)time(0)); //产生随机种子,每次产生的随机数不一样
int a = x + rand()%10; //产生[x,10)之间的随机数
7、i=str.find(s.c_str(),pos);
找到子串返回其下标,否则返回string::npos,npos是-1的无符号表示,是个大正数。
8、char*和string转换
- char*变string:
void function(char* str){ //统计char*字符串长度不能用str.size(),只能用strlen(str);
string s(str); //也可string s = str;
}
或:
char a[] = "ABCE";
string str(a);
- string变char*:
char str[s.size()+1]; //需要预先指定大小
auto ret=s.c_str(); //先把string类型的s变为char*
strcpy(str,ret); //再把char*拷贝给str,注意string变char*用strcpy复制//注:不能直接用str=s.c_str()来转,会报错
- string类型也可以直接用str[i]下标访问字符。
- 初始化时char* str和char str[]的区别:前者指向常量(不可变常量值),后者可以改变str的值。
- string转char*的数组长度问题,需要+1,还有个结束符'0',不加可能会报错。
int len=aa.length();
char* bb=new char[len+1]; //还有个结束符'0'
strcpy_s(bb,len+1,aa.c_str());
...
delete [] bb; //用完后
9、s.insert(i,"%20");
在字符串s中的i位置插入"%20"字符串。
ret.insert(vec);//在集合ret中插入元素vec,vec也可以是容器,要看集合ret的类型。
10、sort(vec.begin(),vec.end());
对整型容器vec中的元素排序。前n项排序则上限用vec.begin()+n;
还可以加个cmp的函数来按想要的方式排序:sort(vec.begin(),vec.end(),cmp);
sort(vec.begin(),vec.end(),cmp);
//这是对整型数组按字典排序
bool cmp(int a,int b){string s1 = to_string(a);string s2 = to_string(b);return s1<s2;
}
//这是对整型从大到小逆向排序
bool cmp(int x,int y){return x>y;
}
11、s.assign(vec.begin(), vec.end());
容器拷贝,把容器或者集合vec中元素拷贝到容器s中,通常和集合使用去重:
vector<int> vec;
set<int> ret(vec.begin(), vec.end()); //vec的元素逐个插入集合ret
vec.assign(ret.begin(), ret.end());
或者
vector<int> vec;
set<vector<int>> ret;
ret.insert(vec); //整个vec一次性插入集合ret
for(auto x:ret)vec.push_back(x); //set再逐个插入容器vec,即可去重
对于数组拷贝到容器:
int a[] = {...};
vec.assign(a,a+a.size())
12、stoi 和 to_string()
string转整数:int y = stoi(s); 或者int y = atoi(s.c_str());
整数转string:string s = to_string(y);
13、reverse(y.begin(),y.end());
reverse函数功能是逆序(或反转),多用于字符串、数组、容器。反转在[first,last)范围内的顺序,头文件是#include <algorithm>。例:
14、s.erase(pos,n);
string.erase(pos,n) //删除从pos开始的n个字符,例:s.erase(1,2);
s.erase(s.begin()); //删除pos处的一个字符(pos是string类型的迭代器)
s.erase(s.begin()+1,s.end()-1); //删除从first到last中间的字符(first和last都是string类型的迭代器)
(注:也可用于整型容器)
15、vec.clear();
清空vec的内容,更多有关vec的操作如图:
16、
db2 replace函数的用法_C++常用函数整理相关推荐
- db2 replace函数的用法_MySQL常用函数,你真得看看!
本文同步Java知音社区,专注于Java 作者: 蔡不菜丶http://juejin.im/post/5ed3b3fb6fb9a047ed240575 概念: 相当于java中的方法,将一组逻辑语句封 ...
- c语言count函数的用法,java count函数用法
java count函数用法 [2021-02-11 06:55:28] 简介: 在excel中count函数的功能是:计算数字的个数,对给定数据集合或者单元格区域中数据的个数进行计数.COUNT函 ...
- c语言掌握常用函数,c语言一些常用函数.pdf
c语言一些常用函数 C 语言程序设计(常用函数说明) C 语言是 1972 年由美国的 Dennis Ritchie 设计发明的,并首次在 UNIX 操作系统的 DE C PDP-11 计算机上使用. ...
- python日历函数_Python—日历函数—日历模块的常用函数,calendar,常见
Python-日历函数-日历模块的常用函数,calendar,常见 发表时间:2020-07-07 日历函数 calendar模块中提供了非常多的函数来处理年历和日历. 例如:打印2020年7月份的日 ...
- c++ encode 函数_C++常用函数
ctype.h 中常用函数:字符类型判断及简单转换 C 语言中 ,在 C++ 中为 本文下面列出这个头文件的常用函数.目的是了解字符判断函数和学习简洁代码编写. 注意: C++ 中的 和 头文件继承于 ...
- XPath用法及常用函数
目录 XPath简介 XPath语法 选取节点 谓语(Predicates) 选取未知节点 选取若干路径 XPath 轴 XPATH的几个常用函数 XPath简介 XPath (XML Path La ...
- c语言string函数的用法_C语言基础| 指针和函数
点击蓝字关注我们 指针和函数 栈帧:当函数被调用时,系统会在stack空间上申请一块内存,用来给函数提供空间,存储形参和局部变量(定义在函数内部的变量). 当函数调用结束时,这块内存空间会被自动释放( ...
- SQL数据分析:sqlzoo官网学习select,where,order by,limit,聚合函数,having,常用函数,窗口函数,表链接,子查询
SQL数据分析: 2022找工作是学历.能力和运气的超强结合体,遇到寒冬,大厂不招人,可能很多算法学生都得去找开发,测开 测开的话,你就得学数据库,sql,oracle,尤其sql要学,当然,像很多金 ...
- mysqlsql常用函数_MySQL中的常用函数
在MySQL中,函数不仅可以出现在select语句及其子句中,而且还可以出现在update.delete语句中. 常用的函数有: 1. 字符串函数:主要用于处理字符串. 2. 数值函数:主要用于处理数 ...
- python常用函数-Python 学习:常用函数整理
整理Python中常用的函数 一,把字符串形式的list转换为list 使用ast模块中的literal_eval函数来实现,把字符串形式的list转换为Python的基础类型list from as ...
最新文章
- 什么是Bi-GRU语义解析
- Direct2D教程(三)简单几何图形
- trap信号捕捉命令介绍与shell结合实战讲解
- SCANF SCANF_S
- 文件上传之传统方式上传代码回顾
- mysql二级缓存redis_redis实现二级缓存
- 开发对接微信卡包会员卡_产品||AI刷脸会员+电子会员卡
- 高速公路坐标高程计算程序开发之后记
- 集成电路芯片半导体中英文对照术语词汇表
- Hadoop详解(二)——HDFS的命令,执行过程,Java接口,原理详解。RPC机制
- 计算机软考深圳积分,2020年软考证书能为深圳积分入户加分吗?
- 杂记——贝叶斯可信区间与频率置信区间的区别
- 无法出现 Bandizip 的右键菜单
- 【自动驾驶-感知-红绿灯】红绿灯识别知识点
- Linux下往github上传项目
- openpyxl基本使用
- keycloak 认证服务
- 关于五常膝关节矫形器的介绍
- CC2541之发现服务、特征值及读取特征值中存储值的详细过程
- CSP-S/J 2019 (原NOIP)试题+答案