PAT考试C++总结(二)

1.abs()绝对值,pow()次方,sqrt()开方,使用时需要加上头文件cmath

2.reverse(a,b),将某数组部分全部倒序,a为起始地址,b为终点地址,倒序部分不包括b。使用时需要加上头文件algorithm

3.C++的几种输入输出方式:
cin:遇到空格或换行结束
cin.get(字符变量名),用来接收字符,只获取一个字符,可以接收空格,遇回车结束
cin.get(数组名,接收字符数目),用来接收字符串,可以接收空格,遇回车结束。
cin.get(),没有参数,主要用于舍弃输入流中不需要的字符,或者舍弃回车,即舍弃输入流中的一个字符。
cin.getline():接收一个字符串,可以接收空格等,最后一个字符为‘\0’
getchar():获取一个字符,函数值为获取的字符

4.list用法:https://www.cnblogs.com/lalalabi/p/5060210.html

5.接收一段有规律格式不定长的数据可以用下面方式,EOF表输入的结束:

while(scanf("%d %d",&m,&n)!=EOF){
        ....
    }

6.struct结构体的定义:

struct name{
	...
};

结构体的初始化常用指针,假设有个结构体Stu,有name的属性,那么使用应该如下:

Stu *s=new Stu();
string n=s->name;

7.vector序列容器,一个长度可变的序列,用来存放 T 类型的对象。必要时,可以自动增加容量,但只能在序列的末尾高效地增加或删除元素,使用时需要加上头文件vector
常用函数:
begin():返回容器首地址对应指针
end():返回容器尾地址对应指针
push_back():添加元素
emplace_back():添加元素,相比push_back()更高效,并减少了内存的浪费
size():返回容器大小

8.对于数据量较大的情况应该使用scanf和printf输出,避免超时

9.vector获取指定位置元素直接用中括号加序列号即可,如s[1]。list数组就不能像vector一样获取指定位置的元素

10.用string的compare方法来比较两字符串之间是否相等,如果相等返回值为0

string str1,str2;
//相等
if(str1.compare(str2)==0){
	...
	}

11.stringstream用于C++类型转换,可以理解成吃进去一种数据类型吐出来你需要的数据类型,使用时需要加上头文件sstream,下面举一个string转int的例子,其他类型也类似:

string a="123";
int b;
stringstream ss;
ss<<a;
ss>>b;//这一步结束后,b为123
全部评论

相关推荐

天降大厂offer:想从事前端就放前端的技术栈,然后项目描述,还有项目做了什么内容,使用了什么技术解决了什么问题优化了什么性能。然后头像可以不要,在读也可以不要,还有bg的话就不要放课程,写哪个学校什么本科,还有绩点排名(如果高的话),然后就是技术栈写好一点,接下来就是项目(有实习就写实习,没有就到项目),项目放两个好一点的,自己包装一下,然后有参加什么竞赛放两个就好了,接下来就是靠你自己了,毕竟211还是很难容易找的,不像我们学院本
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
10-29 21:14
疯犬丨哈士奇:喜欢你的人会主动表白,对你有想法的人会很主动,所以要你的公司不会吊着你所以懂了吧
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务