zoukankan      html  css  js  c++  java
  • C语言变量:名称、地址和值

    变量的名称、地址和变量的值之间关系密切。

    我们可以认为变量有两个属性:名称和值(其他属性暂不讨论);

    计算机编译和加载后也认为变量有两个属性:地址和值。地址就是变量在计算机内部的名称。

     

    许多语言中地址都归计算机管,对程序员隐藏。

    但是在C当中,可以通过&运算符访问地址,通过*运算符获取地址上的值。

    例如:&barn表示变量barn的地址。使用变量名即可获得变量的值。

    使用*运算符可以获得地址上的值;

    例如:

    1 int barn =1; 
    2 int val;
    3 int * pbarn; //声明了一个指向int变量的指针
    4 pbarn = &barn;  //告诉指针pbarn指向谁;
    5 val = *pbarn;  //将指针所指的变量的值赋值给val

    指针的本质也是变量,叫做指针变量,这个特殊变量的存的值是地址。

     

    简而言之,普通变量把值作为基本量,把地址作为通过&运算符获得的派生量

    而指针变量把地址作为基本量,把值作为通过*运算符获得的派生量;

     

    *运算符也叫做间接运算符

    之所以叫间接运算符,其实上面代码的3-5行实现的效果等效于 val = barn;

    所以是间接实现了赋值,于是这个运算符就叫间接运算符。

     

    所以说&、*和指针可以操纵地址和地址上的内容。

     

  • 相关阅读:
    Android-内存泄漏
    性能adb命令
    设置Nginx开机自启动
    【转 记录】python中的encode以及decode
    SVN 提交回滚
    Linux基础
    CentOS6.X关闭防火墙
    SCP用法
    Linux学习之CentOS(十三)--CentOS6.4下Mysql数据库的安装与配置(转)
    (转,记录用)jQuery页面加载初始化的3种方法
  • 原文地址:https://www.cnblogs.com/grooovvve/p/9871884.html
Copyright © 2011-2022 走看看