zoukankan      html  css  js  c++  java
  • C++ 星号* 与 引用&

    星号 *

    1.  声明的时候有*, 表示指针变量

    int *p=&a;// '&'的作用就是把a变量在内存中的地址给提取出来

    2.  * +地址, 表示地址操作符

    3.  数字*数字, 表示乘法

    4.       解引用 (寻找指针所指的地址里面的内容)

    *p=5;//这就是解引用,*解释了 p对常量的内存地址的引用,解释结果就是直接去寻找p所指内容,因为p指向a,所以a的内容将被修改,而不是原来的常量值。
    #include <iostream>
    using namespace std;
    
    int main()
    {
        //1.在声明变量的时候* 指针变量
        int a = 12;
        int *p = &a;
    
        *p; //2.地址操作符 读和写
        cout << *p << endl; //读取
        *p = 123; //写入
    
        int b = 12;
        int c = 12 * 23 * b; //3.数字*数字 表示乘法
       
       //内存操作, 读 写 取地址&
    system(
    "pause"); return 0; }

    引用 &

    1.  按位与 (二进制运算)

    2.  取地址

    3.  声明一个引用

    引用 做函数参数

    #include <iostream>
    using namespace std;
    //引用做参数
    
    void fun(int& a)
    {
        cout << a << endl;
    }
    
    int main()
    {
        int b = 12;
        fun(b);
        system("pause");
        return 0;
    }

    结合星号* 引用&

    #include <iostream>
    using namespace std;
    //引用做参数
    
    
    int main()
    {
        int i = 1024;
        int *p = &i;   // p指针指向i
        int **p2 = &p; // p2指针指向p指针
        cout << "  i: " << i << "  p: " << p << "  p2: " << p2 << endl; // 分别打印 原始对象, 指针, 指针的指针
        cout << " *p: " << *p << " **p2: " << **p2 << endl;  // *p 解引用, **p2 两次解引用
        system("pause");
        return 0;
    }
  • 相关阅读:
    day3
    day2
    day1-存储
    day5-iptables
    MySQL之补充
    11.18
    11.17
    junit基础学习之-测试controller层(2)
    junit基础学习之-简介(1)
    外键和级联
  • 原文地址:https://www.cnblogs.com/clemente/p/10318362.html
Copyright © 2011-2022 走看看