写给自己的

道阻且长,行则将至。

1 引用和指针

引用

引用是为变量起的别名,和原变量共享一块内存,地址相同。

int a = 9;
int &a1 = a;
// a1是a的别名

//指针变量的引用
int *pa = &a;
int* &other_pa = pa;
//other_pa是指针变量pa的别名

交换两个字符串:参数引用

定义两个字符串 apbp ,要求用swap 函数交换两个字符串的内容:

char * ap = "hello";
char * bp = "world";
swap(ap,bp);
void swap(int *&a,int *&b){
    int * tmp;
    tmp = a;
    a = b;
    b = tmp;
}
65413

指针算数运算和数组

指针运算的步长:取决于指针所指向的类型大小(字节数),声明一个数组,占用5*4个字节,

int a[5];

与下面的内容加以区分: