赞
踩
c++万能头文件及固定格式
- #include <bits/stdc++.h>
- using namespace std;
-
- int main(){
-
-
- return 0;
- }
c++标准库相对于c标准库多了bool类型数据
- bool a = true;
- bool b = false;
输入输出:cin/cout
c++中的cin/cout与c语言中的printf/scanf之间有几个明显的区别:
格式化:在c语言中,通过使用格式化字符串来指定输入输出的格式,如%d表示整数,%f表示浮点数等。而在c++中,cin/cout通过流操作符<<和>>直接处理(自动判断)数据类型,不需要使用格式化字符串
类型安全:c++的cin/cout更加安全,它们会自动根据变量的类型进行输入和输出,不需要手动指定输入输出的数据类型
总的来说,c++中的cin/cout相对于c语言中的printf/scanf更加方便、安全和灵活,是c++提供的更高级的输入输出机制
- int a,b;
- double x,y;
-
- cin >> a >> b;
- cout << a << b <<endl;
-
- cin >> x >> y;
- cout << x << y <<'\n';
需要指出,在上述代码中第二个cout后并非使用endl,而是'\n',在算法竞赛中也常用这种写法,原因是endl相比于'\n'更加耗时
endl可理解为'\n'+刷新缓冲区,因此有时使用'\n'输出提示文字时会出现不显示的情况,造成语义混乱(需深入了解可自行b站)
(输出n位小数点限制的数据,需加上 ···<<fixed<<setprecision(n)<<··· )
取消同步流
cin/cout虽然相比于printf/scanf更加安全与便利,但其运行速度更慢,这时可采取取消同步流的方法来提高其速度
- #include <bits/stdc++.h>
- using namespace std;
-
- int main(){
- ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
-
- }
取消同步流后,其速度与printf/scanf速度相差不大,适用于算法竞赛数据量较大的情况
string的使用
声明与输入
- string str;
- cin>>str;
- getline(cin,str);
string的各种常见基本操作
- int str="Hello,World";
-
- //获取字符串长度
- int length=str.length(); //或length=str.size()
-
- //拼接字符串
- string str1,str2;
- string res1=str1+str2;
-
- //尾接字符串
- str+="a";
-
- //获取子串
- string sstr=str.substr( 7 , 5 );
- //sstr="World",起始下标为7,子串长度为5
-
- //字符串查找
- bool res2=str.find("lo",2);
- //"lo"为要寻找的子串,寻找的起始下标为2
-
- //字符串比较
- int res3=str1.compare(str2);
- //按字典序比较,res<0则str1小于str2,res=0则str1与str2一样,res>0同理
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。