c++实用知识
作者:
无尽knight
,
2022-09-14 13:00:08
,
所有人可见
,
阅读 305
## 保留成小数形式
cout << fixed;
## 保留到小数点后几位,n为位数
cout << setprecision(n);
## set遍历方法
set<int> p;
for(int i = p.begin(); i != p.end(); i ++ ) cout << *i << ' ';
## 全排列
#include<algorithm>
sort(a, a + n);
do
{
}while(next_permutation(a, a + n));
## 格式化输入
#include<sstream>
string a;
cin >> a;
stringstream ss(a);
string word;
while(ss >> word)
{
cout << word << endl;
}
## 对拍器文件处理
DP.txt:
freopen("input.txt", "r", stdin);
freopen("DP.txt", "w", stdout);
DFS.txt:
freopen("input.txt", "r", stdin);
freopen("DFS.txt", "w", stdout);
## cin.ignore()函数是C++标准输入流(cin)中的一个方法。cin.ignore()函数中有两个参数,分别为数值型的a 和 字符型的 ch ,即cin.ignore( a, ch )。它表示从输入流 cin 中提取字符,提取的字符被忽略,不被使用。而每抛弃一个字符,它都要进行计数和比较字符:如果计数值达到 a 或者被抛弃的字符是 ch ,则cin.ignore() 函数执行终止;否则,它继续等待。
它的一个常用功能就是用来清除以回车结束的输入缓冲区的内容,消除上一次输入对下一次输入的影响。例如可以这么用,cin.ignore(1024, '\n'),通常把第一个参数设置得足够大,这样实际上是为了只有第二个参数 '\n' 起作用,所以这一句就是把回车(包括回车)之前的所以字符从输入缓冲流中清除出去。
如果默认不给参数的话,默认参数为cin.ignore(1, EOF),即把EOF前的1个字符清掉,没有遇到EOF就清掉一个字符然后结束。
## 与或非门
与门 - &
或门 - |
非门 - !
## 角度转弧度 - 用于计算三角函数
const double PI = acos(-1);
double fun(double x)
{
return PI / 180 * x;
}
## string find函数,查找字母或子串出现的位置
cout << s.find("e") << endl;
if (s.find("a") == s.npos)
cout << "not found" << endl;
string s = "hello world!";
cout << s.find("l",5) << endl; // 从位置5开始找指定元素