一.sort(start,end,cmp)
1.头文件
#include< algorithm >
2.注释
start:起始地址.
endl:结束地址的下一位.
cmp:用于规定排序的方法,可不填,默认升序.
3.例
a[100]
sort(a,a+100)
二.memset(void * s,int ch,size_t n)
1.#include< cstring >
2.将s中当前位置后面的n个字节(typedef usingned int size_t)用ch替换并返回s.
对于int数组:只能初始化为0或-1.
3. memset(a,0,sizeof(a))
三.保留两位小数
1.#include< iomanip >
2.输出平均数,并保留两位小数
double pj;
cout<<setiosflags(ios::fixed)<<setprecision(2)<<pj<<endl;
四.transform函数(字母转大小写)
1.注释:
s.begin():第0个字符的位置
s.end():最后一个字符的位置
s.begin():输出的开始位置
::tolower//字母转小写
::toupper//字母转大写
(::作用运算符)
2.代码:
#include<iostream>
#include<algorithm>
#include<string>
using namespace std;
int main()
{
string s;
s="abcdefg";
transform(s.begin(),s.end(),s.begin(),::toupper);
cout<<s<<endl;
return 0;
}
结果:
五.字符串截取
1.形式:s.substr(pos,n)
2.解释:从pos开始的n个字符的截取
pos默认值为0
n默认值为s.size()-pos
3.代码
#include<iostream>
#include<string>
using namespace std;
int main()
{
string s,a;
s="abcdefg";
cout<<s.substr(2,3)<<endl;
cout<<s.substr()<<endl;
return 0;
}
结果:
六.lower_bound和upper_bound
#include <algorithm> //头文件
1.lower_bound(first,last,val)
(1)注释:
返回一个iterator,指向在[first,last)范围内的 不小于 / 大于等于 val的第一个元素。
(2)版本:
1)使用operator <进行比较
template <class ForwardIterator, class T>
ForwardIterator lower_bound (ForwardIterator first, ForwardIterator last,
const T& val);
2)使用comp进行排序
template <class ForwardIterator, class T, class Compare>
ForwardIterator lower_bound (ForwardIterator first, ForwardIterator last,
const T& val, Compare comp);
2.upper_bound(first,last,val)
(1)注释:
返回一个iterator,指向在[first,last)范围内大于val的第一个元素。
(2)版本:
1)使用operator <进行比较
template <class ForwardIterator, class T>
ForwardIterator upper_bound (ForwardIterator first, ForwardIterator last,
const T& val);
2)使用comp进行排序
template <class ForwardIterator, class T, class Compare>
ForwardIterator upper_bound (ForwardIterator first, ForwardIterator last,
const T& val, Compare comp);