c++中的引用
本质是给一个变量给予一个别名,别名被使用时也会改变原来的变量。
这样在函数调用的时候就不用传址了
在c++中&可以是引用。也可以是取址

#include<cstdio>
#include<iostream>
#include<cstring>
using namespace std;
void jia1(int*a){//取址
(*a)++;
}
void jia2(int&a){
a++;
}
int main(){
int b=0,c=0;
jia1(&b);//传址
jia2(c);//传名
cout<<b<<" "<<c;
return 0;
}
c++数组
如一个班级有40个同学,每个同学有一个数学成绩,如果定义40个变量会很复杂,这时就引入数组。一维数组的定义,type name [范围]
int shu[40],就可以储存40个整型数字。
数组的访问使用下标,从0开始所以要比范围小1;数组的地址是首元素的地址。

范围for(类型 变量名:数组名)
语句,编译器需要c++11以上的编译器。
如果dvc++不支持,可以添加编译器支持。


能支持的都可以添加。
其实是把数组的值一个个赋值给n;类型要匹配。

缺点,一定会输出所以的数组内容,没有使用的内容也会引用;
虽然n应用数组的内容,但改变n,数组内容不变;
auto关键字
auto自动识别变量的类型。
memset
memset函数定义void* memset(void*ptr,int value,size_t num);
返回值是无类型的指针,第一个参数是数组,第二个是设置的值,num是设置多少个。
是以字节为单位来设置。
要包含头文件<cstring>;
效果
改变字符的值,会相同因为字符是一个字节
如果是整数数组,一个位置4个字节,要4个更改。

memcpy拷贝数组。
memcpy(目标地址,要拷贝的地址,数量)
。