常量与变量的区别
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了常量与变量的区别相关的知识,希望对你有一定的参考价值。
“常量”在程序运行时,不会被修改的量。换言之,常量虽然是为了硬件、软件、编程语言服务,但是它并不是因为硬件、软件、编程语言而引入。
常量区分为不同的类型,如25、0、-8为整形常量,6.8、-7.89为实型常量,‘a’‘b’为字符常量。常量一般从其字面形式即可判断。这种常量称为字面常量或直接常量。
变量来源于数学,是计算机语言中能储存计算结果或能表示值抽象概念。变量可以通过变量名访问。在指令式语言中,变量通常是可变的;但在纯函数式语言(如Haskell)中,变量可能是不可变(immutable)的。在一些语言中,变量可能被明确为是能表示可变状态、具有存储空间的抽象(如在Java和Visual Basic中);但另外一些语言可能使用其它概念(如C的对象)来指称这种抽象,而不严格地定义“变量”的准确外延。
参考技术A常量与变量的区别是:
数学中表征事物量的一对概念。
在事物的特定运动过程中,某量若保持不变,则称之为常量。
反之,则称之为变量,在生活中有广泛运用。
常量与变量的用法:
数学的研究对象从常量进到变量的过程表明,人们对事物数量关系的研究已经从静止的、孤立的观点转变到运动和联系的观点。
这种思维方式的改变反映出辩证法已经进入了数学。
正如恩格斯所说,数学中的转折点是笛卡尔的变数,变量数学本质上不外是辩证法在数学方面的运用。
例:#define PI 3.14
变量描述较多:http://zhidao.baidu.com/question/59616754.html 参考技术C 常量一般是指通过宏定义、const修饰而得到的,另外,像1,10,1.25f,1.36d这样的数值也是常量。PS:后面的f,d表示该数值是float,double类型的,欲知更多有关这方面的只是,请参考《C primer plus》。
e.g. #define MAX 32767 //这样就通过宏定义了一个MAX常量
const int MAX 32767; //通过const关键字修饰符定义了一个整形常量MAX
const float PAI 3.1415926; //通过const关键字修饰符定义了一个浮点型常量PAI
char *const ptr = 0x12345678; //通过const关键字修饰符定义了一个指针常量
除了以上情况,在C语言中见到的除函数名,关键字等以外的合法标识符,均为变量标识符。
区别:常量是定义时可以对其设置值(数值常量除外),而在其后的任何时刻都不可以改变其值的量。
变量是可以在定义后的任何时刻改变其值的量。追问
java 语言的
追答java C++的 在这方面都差不多
java中的数据类型必须实例化后能才使用,各种数据类型实例化后的表示方式分为两种:变量和常量
变量简单的说就是在程序运行期间可以修改的量,常量就是在程序运行期间不能被修改的量
汗!
追答怎么样
跟你说了java C++ 在这些概念上差不多
OC与Swift的主要区别
swift与OC的主要区别就是语法区别,其他大抵相同.
区别1: swift中使用let定义常量,var定义变量.常量一经赋值,不可以进行修改,变量赋值后可更改.
swift能够根据右边的代码,推倒出该变量的准确类型.
在实际开发中 使用常量多还是使用变量多?
使用常量,更加安全,不能够被修改,在需要对该对象进行修改的时候 在修改为var修饰区别.
2: swift对数据要求异常严格,不会做隐式转换;
不同类型之间不能够直接计算需要手动转换类型,调用构造函数传递参数进行类型转换
区别3: swift中有一大特色,就是optional可选项,定义变量是,如果指定可选项,表示该变量可以有一个指定类型的值,也可以是nil;
- 声明: var a: Int?
- ‘?‘表示可选类型或者可选解包,
在调用可选类型的对象的属性或者方法的时候会使用可选解包
- ‘!‘ 表示强行解包
- 获取可选类型的不为空的值
- 强行解包有风险,需要考虑是否安全
‘??‘ 合并空选项
- 需要使用 () 提高优先级
- 如果有值就直接使用,如果没有就使用 ?? 后面设置的默认值
- 判断字符串 或者基本数据
区别4: swift中构造函数可以重载,就是init的括号内写一堆参数,OC中代替方式initWithXXX....
闭包
- 字符串
- String 是结构体,更加轻量级,效率更高,支持遍历,可以和NSString 无缝的转换 as
- NSString 集成自NSObject 是对象
- 字符串的合并
- 使用 +
- 使用String()传参数实例化字符串
- \() 转义字符串
- 格式化字符串 String(format:
- 字符串的截取
- 集合
- let 声明的是不可变的集合,var 声明的是可变的集合
- 数组
- [XXX]表示数组类型, XXX是某一个类
- [XXX]() 就能够实例化空数组
- [元素1,元素2,....]
- 字典
- [key1 : value1, key2 : value2,...]
- [String : Any] 最常用的字典类型
- 闭包的基本格式
以上是关于常量与变量的区别的主要内容,如果未能解决你的问题,请参考以下文章