C++指针与引用(*和&)

// 指针

// 指针是一个变量,其值为另一个变量的地址,即,内存位置的直接地址。
// 就像其他变量或常量一样,必须在使用指针存储其他变量地址之前,对其进行声明。
// *在C++中可做指针使用,声明方式为:
int    *ip;    /* 整型的指针 */
double *dp;    /* double 型的指针 */
float  *fp;    /* 浮点型的指针 */
char   *ch;    /* 字符型的指针 */
// *的作用是取p地址对应的值。&此时的作用是取地址,则有例子:
int main(){
    int var = 20;
    int *p;  //声明指针
    
    p = &var;     //取了var的16进制地址,此时p是地址, *p=20, var=20
    
}

--------------------------------------------
// 引用

// 引用变量是一个别名,即它是某个已存在变量的另一个名字。
// 把引用初始化为某个变量之后,就可以使用该引用名称或变量名称来指向变量。
// 引用很容易与指针混淆,它们之间有三个主要的不同:
// 1)不存在空引用。引用必须连接到一块合法的内存。
// 2)一旦引用被初始化为一个对象,就不能被指向到另一个对象。
// 指针可以在任何时候指向到另一个对象。
// 3)引用必须在创建时被初始化。指针可以在任何时间被初始化。

int main(){
    int i;
    
    int& j = i;  //声明引用j指向i
    
    i = 5; //此时i和j的值都变为了5
}


猜你喜欢

转载自blog.csdn.net/weixin_42569673/article/details/104873572
今日推荐