zoukankan      html  css  js  c++  java
  • 宏定义和常变量

    在C语言中用#define定义符号常量,且#define通过编译预处理命令完成。如:

          #define PI  3.14

    实际上,只是在程序预编译时进行字符的置换,将所有的PI替换成3.14.在预处理结束以后,程序中将没有PI这个符号。

    使用符号常量比直接使用常量更直观,我们还可以用符号表示一定的意义;在程序维护中如果需要改变常量的值,只需要在#define命令中修改就可以了。

    使用符号常量需要注意的问题:

                 一是符号常量不是变量,在程序运行时不分配内存单元,只是在编译预处理阶段将标识符替换成所代表的常量;

                 二是符号常量没有类型,在编译时不进行类型检查;

                 三是替换后的表达式和预想的表达式不一定一致。

    在C++中提供了用const定义常变量的方法,如:

              const float  PI =3.14

    常变量在声明之后立即被初始化(可以用值初始化,也可以用表达式进行初始化)。使用表达式初始化时,系统化先计算出表达式的值,然后将值赋给常变量;

    另外需要注意的是,系统在静态区给常变量分配内存但愿,普通变量是在堆栈区分配内存单元。系统还会对常变量进行类型检查,进一步降低了程序的出错概率。

  • 相关阅读:
    C#处理JPEG头信息
    利用WebSocket传输数组或者Blob的方案
    System.Collections命名空间下的所有接口及结构图
    C#生成影像金字塔
    C# DEM数据转换为JPEG
    C# 数值型数据转换为字节数组
    c语言实现bitmap的基本操作
    大数据spark 视频的免费连接
    Android开源应用【转】
    linux c程序中获取shell脚本输出 [转]
  • 原文地址:https://www.cnblogs.com/jiajuanjuan0521/p/3391104.html
Copyright © 2011-2022 走看看