一、第一个程序
1、c++头文件的新标准: #include<iostream> (旧c++风格可以写成 #include<iostream.h> 、 #include<cstdio>、 #include<cmath>等等。。在原c语言的头文件都可以使用,只需要把.h去掉,前面加上c )
2、名称空间: namespace c++的标准库是 std
引用 using namespace std;可以使用输入输出cout/cin/end/endl。。。
不写上一行代码,就要表明引用,如 std::cout<<" "<<std::endl;
3、c++输入输出的格式
int a;
输入: cin cin>>a;
输出:cout cout<<a;
endl 换行的作用
提醒:C++也兼容C,所以在使用过程中,哪个方便用哪个,不用强制要求。
4、数据类型
数据类型 符号 位数 取值范围
整形 int 32位 -2147483648~~2147483647
短整型 short 最多16位 -32767~32768
长整形 long 最少32
单精度浮点数 float 32位
双精度浮点数 double 64位
字符型 char 8位
布尔类型 bool 32位 false(0) 、true(非0)
字符串 string
类 class
枚举 enum
结构 struct
联合 union
5、编译器编译程序过程
test.c test.h main.c
(1)预处理:展开头文件/宏替换/内联调用/去掉注释/条件编译 test.i main.i
(2)编译:检查词法、语法,生成汇编语言 test.s main.s
(3)汇编:转成机器能看懂的二进制码 test.o main.o
(4)链接到一起生成可执行程序 a.out
二、c++新语法:引用和指针
引用:
引用不是定义一个新的变量,而是给一个已经定义的变量重新起一个别名
定义方式
数据类型 & 引用变量名 = 已定义过的变量名;
引用的特点:
1.一个变量可以要多个别名。
2.引用必须初始化。
3.引用只能在初始化的时候引用一次,不能改变为再引用的其他变量。
定义引用b,它就是a,所以给a赋值时,b==a的值,b的地址,也是a的地址,给b赋值时,情况一样,定义引用c,c就是b,就是a,所以改变任意一个引用,原值和它的引用都会改,并且地址都是原值的地址.
注意事项:
1.原值用const修饰的,引用也必须用const。
2. 进行隐式转换时,引用类型要加const,表示这个匿名、临时变量具有常属性。
使用场景:
1、引用做参数
void swap(int& a,int& b){
int temp=a;
a=b;
b=temp;
}
swap(a,b);
也可以交换两数的值;
总结,和指针效果一样。
2、应用做返回值
函数的返回值在全局生成一个临时变量,再拿出这个临时变量.
在语法上,引用知识一个变量的别名,不需要开空间,可是在底层实现时,开辟空间存下了变量的地址。