C++常用函数整理

sort函数:

1.sort函数包含在头文件为#include的c++标准库中,调用标准库里的排序方法可以实现对数据的排序,但是sort函数是如何实现的,我们不用考虑!

2.sort函数的模板有三个参数:

void sort (RandomAccessIterator first, RandomAccessIterator last, Compare comp);
(1)第一个参数first:是要排序的数组的起始地址。

(2)第二个参数last:是结束的地址(最后一个数据的后一个数据的地址)

(3)第三个参数comp是排序的方法:可以是从升序也可是降序。如果第三个参数不写,则默认的排序方法是从小到大排序。

(4)注意库中的sort函数对迭代器的类型也是有要求的,不支持随机访问的好像不太行哦!

#include
#include
using namespace std;
bool cmp(int a,int b);
main(){
  //sort函数第三个参数自己定义,实现从大到小
  int a[]={45,12,34,77,90,11,2,4,5,55};
  sort(a,a+10,cmp);
  for(int i=0;i<10;i++)
    cout<<a[i]<<" ";
}
//自定义函数
bool cmp(int a,int b){
  return a>b;
}

在这里插入图片描述

getline函数:

1.当 cin 读取数据时,它会传递并忽略任何前导白色空格字符(空格、制表符或换行符)。一旦它接触到第一个非空格字符即开始阅读,当它读取到下一个空白字符时,它将停止读取。

2.为了解决这个问题,可以使用一个叫做 getline 的 C++ 函数。此函数可读取整行,包括前导和嵌入的空格,并将其存储在字符串对象中。

3.用法getline(cin, inputLine);

	string name;
    string city;
    cout << "Please enter your name: ";
    getline(cin, name);

revrese【逆置】函数:

1.reverse是C++下的库函数,可用于翻转字符串,翻转链表等使用需要添加头文件

#include 

2.reverse()会将区间[beg,end)内的元素全部逆序;
其中
区间翻转

1.reverse(str.begin(),str.end()) 反转字符串
 	 
2.reverse(vector.begin(),vector.end()) 反转向量
 
3.reverse(a,a+strlen(a)) 反转数组

memset()函数【对空间初始化函数】

1.简介
memset是一个初始化函数,作用是将某一块内存中的全部设置为指定的值。
2.用法

void *memset(void *s, int c, size_t n); 
s指向要填充的内存块。
c是要被设置的值。
n是要被设置该值的字符数。
返回类型是一个指向存储区s的指针。

3.打样
char str[100];
memset(str,0,100);

Isalpha() 【判断字母】

1.用法:

int result = isalpha('-');`

2.解析:用来判断一个字符是否为字母,如果是字符则返回非零,否则返回零。

islower()【判断是否为小写】

用来判断一个字符是否为小写字母,也就是是否属于a~z。是返回非零,不是返回0。

isupper() 【判断是否为大写】

用来判断一个字符是否为大写字母。是返回非零,不是返回0。

toupper()【将小写字母转为大写】

1.用法:

char c = toupper(a)

2.解析:a为字符时,如果a是小写字母则将其转换为大写字母,否则不变。a为数字则将其按ASCLL码转换为对应字符。(其实即使a是字符,输入之后还是会将其转换为int类型)

tolower()【将大写字母转为小写】

1.用法:

char c= tolower(a)

2.解析:a为字符时,如果a是大写字母则将其转换为小写字母,否则不变。a为数字则将其按ASCLL码转换为对应字符。

isalnum() 【判断数字+字母】

用来判断一个字符是否为数字或者字母,也就是说判断一个字符是否属于
az||AZ||0~9。是返回非零,不是返回0。

isdigit() 【判断是否为数字】

用来判断一个字符是否为数字,如果是数字则返回非零,否则返回零。

swap()【交换函数】

strcpy()【字符串拷贝函数】

1.用法:
char *strcpy( char *to, const char *from );

2.简介:
✳️strcpy函数是将一个**字符串的全部内容(包括'\0'**拷贝到另一个字符串里。

3.打样:
char arr1[] = "abcdefghi";
char arr2[] = "bit";
strcpy(arr1, arr2);//字符串拷贝
printf("%s\n", arr1);
printf("%s\n", arr2);

strlen()函数【计算字符串长度】

1.简介:
✳️不会包含’\0’;

2.用法
size_t strlen ( const char * str );


3.打样
char str1[] = "abcdef";
printf("%d\n", strlen(str1));

strcmp()函数【字符串比较大小】

1.使用与简介C++常用函数整理_第1张图片
2.打样

char* p1 = "abcdef";
char* p2 = "abcdef";
char* p3 = "abcd";
char* p4 = "bcde";
printf("%d\n", strcmp(p1,p2 ));
printf("%d\n", strcmp(p1,p3 ));
printf("%d\n", strcmp(p3,p4 ));

strstr()函数【查找子串】

string 字符串相关函数

数字转字符串

to_string()

1.用法:

std::string to_string(int value);   
std::string to_string(long value);   
std::string to_string(long long value);
std::string to_string(unsigned value);
std::string to_string(float value);
std::string to_string(double value);

打样:	std::string pi =std::to_string(1+2+3+4.123);
		std::cout << pi << std::endl;

2.解析:将数字转换为字符串,这里注意如果是浮点型数转字符,会将精度范围内小数点后的数全部显示出来

字符串转为数字

stoi()与stod()

1.用法:
int std::stoi(const std::string& str,std::size_t* pos=0,int base = 10);
int std::stoi(const std::wstring& str,std::size_t* pos=0,int base = 10);
double stod (const string&  str, size_t* idx = 0);
double stod (const wstring& str, size_t* idx = 0);

打样:
int a = stoi(str1);
cout << "a = " << a << endl;
double b = stod(str1);
cout << "b = " << b << endl;
//如果字符串中,数字在字符(字母和符号)后面,那么调用stoi函数会引发异常

2.解析
stoi函数: 将string类型转换成int类型的函数
stod函数: 将string类型转换成double类型的函数

3.两个函数的共同特性:
a.会自动截取所需要的类型数值
b.遇到非数字,截取停止,即使后面有数字也不会继续读取了

后续还会慢慢更新哦!

你可能感兴趣的:(C++,c++,算法,数据结构)