C++基础知识string,set,队列,栈


因为要找实习,所以回顾了c++编程的基础知识点,在这里顺便记一下。

string

1 cin输入字符串时遇到空格和回车会结束;

getline(cin,str)函数可以输入带空格的字符串 ,以回车为中止

2string转int:

常用方式1

string numstr = str.substr(开始位置,长度); //截取部分字符串
int num = stoi(numstr); //string转int

常用方式2:

#include 
//getline以;作为分隔符一部分一部分的读取
while(getline(cin,str,';')){}
//截取str,从第二个字符一直到最后
string part2 = str.substr(1)
//将字符串string类型part2转换为int型num
stringstream ss;
ss << part2;
ss >> num;

3 reverse(s.begin(), s.end()); //字符串反转

 reverse(s.begin(), s.end()); //字符串反转
原s:'abcdefg';
反转后:'gfedcba'

 

set

set里面的值都是唯一的,没有重复的;且会从小到大排序
参考链接:https://www.cnblogs.com/caiyishuai/p/8646345.html
#include<set>
set<int> arr;
arr.insert(x);
set<int>::iterator it;
for(it = arr.begin();it!=arr.end();it++){}

队列

#include 
queueint,int>> q;
q.empty()
q.size()
q.pop()
q.push()
q.front()
q.back()

#include 
stackint,int>> s;
s.empty()
s.size()
s.pop()
s.push()
s.top()

栈和队列有很多函数都是一样的。