C++常用函数(基础篇)
CheZiHe929 · · 个人记录
-
abs(a): 求一个数a的绝对值 -
exp(a): 求实数x的自然指数e^x -
floor(a): 求不大于实数a的最大整数 -
ceil(a): 求不小于实数a的最小整数 -
log(a): 求实数a的自然数对数 -
pow(x,y): 计算x^y ,结果为双精度实数 -
rand(): 产生0到RAND-MAX之间的随机整数 -
sqrt(a): 求实数a的平方根 -
sort(a+1,a+n+1): 对a_1 至a_n 的a数组进行从小到大的排列 -
nth_element(a,a+k,a+n): 求长度为n的a数组中第k小的数 -
string s: 定义一个名字为s的字符串变量 -
s+=str||s.append(str): 在字符串s后面拼接字符串str -
s<str: 比较字符串s的字典序是否在字符串str的字典序之前 -
s.size()||a.length(): 得到字符串s的长度 -
s.substr(pos,len): 截取字符串s,从第pos个位置开始len个字符,并返回这个字符串 -
s.insert(pos,str): 在字符串s的第pos个字符之前,插入字符串str,并返回这个字符串 -
s.find(str,[pos]): 在字符串s中从第pos个字符开始寻找str,并返回位置,如果找不到返回-1。pos可以省略,默认值是0 -
strcat(st1,st2,n): 将st2前n个字符连接到st1后边,返回st1的值(有选择的+) -
strcpy(st1,st2): 将st2复制到st1中,返回st1的值(赋值) -
strncpy(st1,st2,n): 将st2前n个字符复制到st1中,返回st1的值(前n个字符复制替换,其他不影响) -
strcmp(st1,st2): 比较st1和st2的大小,比较的结果由函数带回。如果st1>st2,返回一个正整数;如果st1=st2,返回0;如果st1<st2,返回一个负整数(首先逐位按照字符ASCII码值比较,如果对应位都相同,则长串大。若出现不相同的字符,则以第一个不相同的字符的比较结果为准) -
strncmp(st1,st2,n): 比较st1和st2的前n个字符进行比较,函数返回值的情况同strcmp函数 -
strlen(st): 计算字符数组st的长度,终止符'\0'不算在长度之内 -
strlwr(st): 将st中大写字母换成小写字母 -
strupr(st): 将st中小写字母换成大写字母 -
binary_search(beg,end,val): 返回一个bool变量,以二分法检索的方式在[beg,end)之间查找val,找到返回true,找不到返回false -
lower_bound(beg,end,val): 返回一个迭代器,指向非递减序列[beg, end)中的第一个大于等于(>=)val的位置 -
upper_bound(beg,end,val): 返回一个迭代器,指向非递减序列[beg, end)中的第一个大于 (>) val的位置 -
__builtin_popcount(a): 统计a 在二进制下“1 ”的个数 -
next_permutation: 生成给定序列的下一个较大排序,直到序列按降序排列为止 -
reverse(s.begin(),s.end());:将s 字符串翻转