“常量”的
广义概念是:“不变化的量”(例如:在
计算机程序运行时,不会被程序修改的量;
数学函数中的某一个量,例如每一个具体的
圆的
半径、
直径数值;
物理学中的靠近地面的
重力加速度;
真空中的
光速数值;不同的
微粒的各自的质量)换言之,常量,在
计算机技术方面虽然是为了硬件、
软件、
编程语言服务,但是它并不是专门为硬件、软件、编程语言而引入的概念。常量可区分为不同的类型,如:25、0为
整型常量,6.8为
实型常量,‘a’、‘b’为
字符常量。常量一般从其字面形式即可判断。这种常量称为
字面常量或
直接常量。
“常量”在计算机领域的另一层含义是它们的编码方法是不变的(但是严格来说‘人为规定的某一种方法也可以因地制宜而人为改变,所以其本身数值大小‘不是‘常量’的内涵’),比如
字符'A'无论在硬件、软件还是各种编程语言中,它的
信息编码即为 ‘ 0x41’。
在除了‘C/C++’的一些高级
程序语言中,‘常量’可以被称作,“在一个信息变化过程中,始终不发生改变的量”,其可以是不随着时间变化的某些量的固定信息;也可以表示为某一数值的字符(或字符串),常被用来标识、测量和比较两者的差异。
但在 ‘C/C++语言中’,‘常量’如果还用‘运行过程中不变的量’来描述,就显得不太准确了,甚至是在具体使用时,这就是一个错误的
概念。在 ‘C/C++’中,定义‘
指针常量’时,根据‘const ’的位置的不同,可以定义出几个不同的形式,虽然其看起来‘符合常量的概念’,但是在实际运行中,其值或地址值是会发生变化的。所以本质还不是‘常量概念’
前者
内涵是表示,定义的“
指针常量”所指向的整数是不变的,在初始化时,
指针变量假如指向地址为‘1000’的变量a,这个a的值是固定不变的,但是指针常量p的值,(即地址值)可以向上、向下移动而指向不同的变量。这就是与常量概念相违背了。
在某些特定的情况下,虽然声明了一个‘变量’,但人们却不希望这个数值被按照‘变量’定义而修改,这种人为的可以被修改却永不会去修改的‘量’,也可以称为‘常量’。其的特点是‘永远不被人为改变’,当然与‘光速不变’表面上一样却是人为的可以被改变的东西。逻辑学中,概念必须避免混淆。对于‘vb中的常量’应该另外定义(例如修改为‘vb中的伪常量’。“伪常量”只是标记,表明可人为改变,但方法本身并无优劣之分)
简单地说,就是在某一个程序运行时,其中某一个因素的数值值要认为固定起来的量。‘Visual Basic’中的常量,分为‘文字常量’和‘
符号常量’。