zoukankan      html  css  js  c++  java
  • [C语言

    A.变量的作用域:
    1.局部变量:在函数或者代码块内部定义的变量
    作用域:从定义处到代码块结束
    生命周期:从定义处分配控件,代码块结束后被回收
    局部变量没有默认值,要自己初始化
     
    2.全局变量:在函数外定义的变量
    作用域:从定义处到文件结尾(能被后面的所有函数共享)
    生命周期:程序启动分配空间,程序退出回收
    全局变量有默认值0
     
     

    从最近的作用域开始寻找,直到找到变量

    复制代码
    #include <stdio.h>
    
    int main(int argc, const char * argv[]) {
        int a = 100;
       
        {
            int a = 200;
            printf("a = %d
    ", a);
        }
       
        printf("a = %d
    ", a);
       
        return 0;
    }
    复制代码
    out:
    a = 200
    a = 100
     
    适合地使用块,能够提高性能,及时回收内存
    块内定义的变量执行过后就会被回收
     
    B. C语言变量的内存分析
    C语言寻址由大到小
    复制代码
     1 #include <stdio.h>
     2 
     3 int main(int argc, const char * argv[]) {
     4     int a = 100;
     5     int b = 200;
     6    
     7     printf("The address of a is %d
    ", &a);
     8     printf("The address of b is %d
    ", &b);
     9    
    10     return 0;
    11 }
    复制代码
    out:
    The address of a is 1606416268
    The address of b is 1606416264
    —》相差4个字节,由大到小
     
  • 相关阅读:
    java StringBuilder和StringBuffer 用法
    java 包装类
    java 异常机制
    java Scanner类的使用
    java Arrays数组
    java 二维数组和对象数组
    LeaFlet学习之结合turf.js生成简单的等值线demo
    Openlayer给定坐标进行绘制多边形
    LeaFlet学习之GridLayer扩展
    LeaFlet学习之聚合效果
  • 原文地址:https://www.cnblogs.com/wvqusrtg/p/4500648.html
Copyright © 2011-2022 走看看