基础知识盲点
1.全局数组会被初始化为0
s%与c%
s% | S表示复数,所以意义为读入字符串 |
c% | c%的意义为读入单个字符 |
那些不常用的输入输出函数
putchar() | 向终端输出一个字符,可以是单引号括起来的字符,也可以是char类型的字符变量。 |
getch() | 从控制台读取一个字符,会等你按下任意键,再继续执行下面的语句,所在头文件为<conio.h>,非标准函数 |
putch(ch) | 在当前光标处输出字符ch,光标自动向右移一个单位,头文件为<conio.h> |
gets(s) | 从键盘读取字符串直到换行符结束,但会舍弃换行符,并在末尾添加‘\0’字符,在头文件<iostream>中,下面的也是 |
puts(s) | 向屏幕输出字符串并换行。 |
Long long 类型
用于大数运算,读入格式scanf(“%I64d”,&n);输出格式printf(“%I64d”,n);
注意:上面的I为i的大写格式。
pair
头文件:<utility>里
作用:将两个数据类型合成一个数据类型,两个数据类型可以是同一或是不同的类型。
格式:pair<数据类型,数据类型> 新类型名;
例如:pair<int ,int> p[5];
用法: .first表示第一个元素 .second表示第二个元素
文件操作
freopen
头文件:<stdio.h>
格式:freopen(“文件名“,”文件打开模式“,stdin)
其中文件打开模式有 r – 只读,w – 写
stdin是标准输入流,默认为键盘,也可将stdin换为其他标准流文件,但是我都不会,就不记了
数组长度的计算
1.sizeof
用法:sizeof(数组名)/sizeof(数组类型);
2.strlen
头文件:< string.h>
用法:strlen(数组名);
注意:strlen只能统计字符数组
String
1.string对象中的字符个数可以通过函数size()或length()实现。
2.要判断string对象是否有字符可以通过函数empty()判断。
3.在string对象中可以使用下标操作符[]检索字符串中的某个字符。
4.在string对象中可以使用substr()函数来取得一个子串。substr()函数的格式为:substr(m,n);
5.如需输出字符串,需用c_str()
String与char数组
可以用string对象给char数组赋值,但是反之不行。
string数组可以进行“+”和“+=”运算,但char数组不行。
析构函数
C++中析构函数以调用构造函数相反的顺序被调用。
初始化列表
将括号里的值赋给括号外的变量
多态性
在基类的函数前加上virtual关键字,在派生类中重写该函数,运行时将会根据对象的实际类型来调用相应的函数。如果对象类型是派生类,就调用派生类的函数;如果对象类型是基类,就调用基类的函数
虚函数
一般用指针或应用调用虚函数,而不用对象名。