PAT考试C++总结(一)

1.scanf 和 printf,同C语言的stdio库,需要加上头文件cstdio

2.输入输出流,cin>>n输入对象到变量n,cout< 使用需要加上头文件iostream

3.数组定义不像java没有静态定义的方法,例如定义char类型数组,直接写 char a[10]

4.字符串类型为string,"s"不需要大写,使用需要加上头文件string

5.遍历数组时,数组的长度定义为无符号整数,所以i应该为unsigned int ,不然比较的时候会报错警告

6.获得字符串string类型的a的某个字符,可以用a.at(i)或者直接写a[i],获得是char的类型的字符

7.C++字符类型转int类型需要先把ASCii码值相减,比如char a=‘4’;int b=a-‘0’

8.C++定义方法,被调用的方法要写在调用它的方法前面

9.查找字符串中某字符或者某子串:
find()查找子串
find_first_of()查找指定字符出现的第一个位置
find_last_of()查找指定字符出现的最后一个位置
上述方法,如果找到会返回位置,如果没找到按理是返回-1,但是结果按照无符号整型处理后输出,为-1的补码4294967295,所以判断没找到应该与string::npo比较,比如

#include
using namespace std;
int main(){
	string a;
	cin>>a;
	if(a.find("abc")==string::npo){
		cout<<"没有指定子串";
	}
	return 0;
}

10.要获取到数组的长度,可以用size(),也可以用length()

11.不能用cstido输出或者输入string字符串,不然会引起程序崩溃,可以用char数组来代替string类型

12.C++自带的数组排序方法sort(),有三个参数,第一个是排序的起始地址,第二个是排序的结束地址,第三个是排序的方法,前两个参数是必须的,第三个可选,不填默认按照升序排序,可以使用标准库的排序方法,less()为升序,greater()为降序,也可以使用自己的定义的排序方法作为第三个参数,方法的返回值为bool型。使用前需要加上头文件algorithm

你可能感兴趣的:(PAT)