运算符是对相同类型的数据进行运算操作的符号。用运算符将常量、变量和函数等数据连接起来的式子称为表达式。表达式的类型由运算符的类型决定,每个表达式按照规定的运算规则都产生一个惟一的值。
2.3.1 数值运算符及数值表达式
数值表达式是由算术运算符将数值型常量、变量和函数等连接起来的式子,其结果仍是数值型数据。
运算优先级依次为:
括号 →乘、除、取模→加、减,其中乘、除和取模同级,加和减同级,分别从左到右进行计算。
2.3.2 字符串运算符及字符表达式
字符表达式是由字符串运算符将字符常量、变量和函数等连接起来的式子,其结果仍然是字符型数据。字符串运算符有以下两种,它们的优先级相同。
( 1 ) + :两个字符串首尾相连形成一个新的字符串。
( 2 )—:两个字符串相连,并将前字符串尾部的空格移到合并后的新字符串的尾部。
2.3.3 日期运算符及日期表达式
日期表达式是由日期运算符将日期型常量、变量、函数等连接起来的式子,其结果为日期型数据或者数值型数据。日期型运算符只有加法( + )和减法(—)两种。
< 日期型数据 >+< 数值型数据 > :结果为日期型数据(指定日期若干天后的日期)
< 日期型数据 > — < 数值型数据 > :结果为日期型数据(指定日期若干天前的日期)
< 日期型数据 > — < 日期型数据 > :结果为数值型数据(两个日期相差的天数据)
2.3.4 关系运算符及关系表达式
关系表达式是由关系运算符、数值表达式、字符表达式或者日期型表达式组合而成的式子,其结果为逻辑真值或逻辑假值。
说明:
关系运算符的优先级相同,从左到右依次进行比较。
关系运算符的两边可以是字符表达式、数值表达式或者日期表达式,但两边的数据类型必须一致。
数值型数据按数值的大小比较,日期型数据依次按年月日的值比较。
字符串包含运算符“ $ ”用来检测左边的字符串是否被包含在右边的字符串中,若包含,结果为逻辑真;否则,结果为逻辑假。
字符串精确比较运算符“ == ”用于精确匹配,即只有当两个字符串完全相同时,结果才为逻辑真;否则,结果为逻辑假。
2.3.5 逻辑运算符及逻辑表达式
逻辑表达式是由逻辑运算符将逻辑型常量、逻辑型内存变量、逻辑型数组、返回逻辑型数据的函数和关系表达式连接起来的式子,其结果仍然为逻辑值。
逻辑运算符的优先次序为: NOT , AND , OR ,可以使用括号来改变逻辑运算的先后次序。
在同一表达式中,如果使用了不同类型的运算符,则各种运算符的优先顺序由高到低为:
括号 →算术运算符→字符串运算符→关系运算符→逻辑运算符。
2.3.6 类与对象运算符
类与对象运算符专门用于面向对象程序设计,它有两种形式。
点运算符( . )主要用于确定对象与类的关系,以及属性、事件和方法与其对象的从属关系。
作用域运算符(::)用于在子类中调用父类的方法。
2.3.7 名称表达式
名称表达式是指有代替字符型变量或数组元素的值的一个引用。名称不是一个变量,也不是数组元素,但它可以替代字符变量或数组元素中的值。
定义一个名称时,只能以字母、汉字或下划线开头,且名称中只能使用字母、汉字、数字和下划线字符,不能使用 VFP 的保留字,名称的长度为 1 ~ 128 个字符。一次可定义多个名称,名称之间用逗号分开。
函数
函数( Function )是一种能够完成某种特定操作或功能的数据形式。使用函数需要若干参数(自变量),函数的运算结果称为函数值或返回值,函数调用的格式为:
函数名( [ 参数 1][, 参数 2][ ,… ] )
说明:
①对于某些没有参数据的函数,圆括号内为空,如系统日期函数 DATE ()。
②当函数带有多个参数时,参数和参数之间用逗号分隔。
③任何可以使用表达式的地方都可以使用函数,表达式将函数的返回值作为运算对象。
|