1、输入输出库与名字空间
#include <iostream> using namespace std;
每次写代码先把这两个东西加上
<iostream>是一个库,叫输入输出库
我们后面使用的cin、cout都是iostream库中,std名字空间下的一个对象
使用名字空间是为了区分同名符号,避免同名歧义
非常的形象
2、输入输出流对象cin和cout
“<<”是流插入运算符
用法:std::cout<<要输出的内容;
“>>”是流提取运算符
用法:std::cin>>要输入的内容;
当我们在程序开头加上了using namespace std;
就可以省略掉std::直接这样写 cin>>要输入的内容; cout<<要输出的内容;
先看一个例子
#include <iostream> using namespace std; int main() { int a, b; cin >> a >> b; cout << a << "+" << b << "=" << a + b; return 0; }
可以看到没有任何问题
但是我们如果去掉using namespace std; 直接报错
加上std::又可以了,很显然我们直接在开头加using namespace std; 更方便简化后面写代码
OK,通过上面一个简单求两个数相加的例子 ,我们已经知道了cin、cout的用法
3、string字符串类
string类是C++的字符串类,提供(封装)了很多工具(成员方法)供使用
同样我们先看一个例子
#include <iostream> using namespace std; int main() { string s = "ABCDE"; //定义一个字符串类变量s,值初始化为ABCDE s[2] = 'c'; //访问2这个位置的元素,将它变成小写的c,注意是从0开始,所以2对应第三个元素 cout << s << endl; //输出修改后的s cout << s.length() << endl; //输出字符串s的长度 s.append("123"); //给字符串s追加内容“123” cout << s << endl; //输出追加后的s s.clear(); //将字符串s内容清空,变为空字符串 cout << s; //输出清空后的s }
点(“.”)表示调用对象的成员方法
用法:对象.函数()
比如 s.length()
变量(对象)s的一个工具(成员方法),length()是返回它的长度
endl就是换行,相当于'\n'
运行结果:
4、bool类型
取值只能为true或false
储存本质是单字节无符号整数1或0
(注意只要是非0即为true,输出也为1)
看例子
#include <iostream> using namespace std; int main() { bool a = true; if (a) { cout << a; } return 0; }
运行结果:
输出为1
常考的是逻辑运算
#include <iostream> using namespace std; int main() { bool a = true, b = !a; if (a && b) { cout << "yes"; } else { cout << "no"; } }
运行结果:
输出no
5、自增++自减--运算符(必考)
分两种
前自增自减(++a,--a):先自增自减,后执行表达式
后自增自减(a++,a--):先执行表达式,后自增自减
我们来看个例子就明白了
#include <iostream> using namespace std; int main() { int a=1, b; b = a++; cout << a << endl << b; }
这里是后自增,则会先执行表达式,将a的值赋给b,a再自增
运行结果:
输出a是2,b是1
#include <iostream> using namespace std; int main() { int a=1, b; b = ++a; cout << a << endl << b; }
这里则是前自增,a先自增为2,再赋值给b
运行结果:
可以看到输出a和b都为2
6、其他
C++兼容C语言,且是向下兼容,反过来就不对了
C++编译器能编译C语言和C++源代码