VFP表达式和运算符

文章作者 100test 发表时间 2008:02:01 15:48:45
来源 100Test.Com百考试题网


一.表达式:表达式是vfp命令和函数的重要组成部分,是由常量、变量、函数用运算符连接而成的有意义的式子
二.运算符:
1.算术运算符:算术运算符用于进行算术运算,连接起来的表达式称为算术表达式,结果是一个数值.如下表:
运算符功能
,-正负号
**,^幂
*,/,%乘,除,取余
,-加,减

优先级从高到低为:**,^→*,/,%→ ,-
例:将(55 9×5)÷2写成vfp算术表达式.
我们在命令窗口输入并执行下列:
?(55 9*5)/2 &.&.结果可以口算,是50
2.字符运算符:用于字符串连接运算,结果是一个新的字符串,如下表:
运算符功能
将 号前后字符串连接起来组成一个新的字符串
-删除-号前面字符串的尾部空格后再与右侧的字符串组成新的字符串
例:在命令窗口输入执行以下:
a="abc " &.&.abc后面有两个空格
b="def " &.&.def后面有两个空格
c="ghi"
?a b c &.&.完全连接,下行是运行结果
abc def ghi
x=a-b-c
?x &.&.下行是结果
abcdefghi
3.日期运算符:用于进行日期运算,如下表:
运算符功能
日期 天数得到新日期
时间 秒数得到新时间
-日期-日期得到间隔天数
时间-时间得到间隔秒数

日期运行符无优先级
例1:计算香港回归距现在多少天.
?date()-{^1997.10.01} &.&.date()函数用于取得当前日期.
例2:计算距今天1000天的日期.
?date() 1000
4.关系运算符:用于进行关系运算,结果是逻辑值,如下表:
运算符功能
<小于
>大于
=等于
<>,#,!=不等于
<=小于等于
>=大于等于
==字符串全等比较
$包含运算,判断左侧字符串是否是右侧字符串的子串
例:输入并执行下列命令:
a=1234 &.&.定义数值常量
b=2345 &.&.定义数值常量
?a.t. &.&.关系成立取真值
?a>b &.&.数值比较
.F. &.&.关系不成立,取假值
x="a" &.&.定义字符常量
y="b" &.&.定义字符常量
?x>y &.&.比较a和b字符的ASCⅡ码
.f. &.&.a和b的ASCⅡ码分别是97和98,关系不成立取逻辑假值
?"bc"$"abcd" &.&.比较$左边的字符串是否是其右边的字符串的子串
.T. &.&.是其子串,取逻辑真值
?"ac"$"abcd" &.&.比较$左边的字符串是否是其右边的字符串的子串
.F. &.&.不是其子串,取逻辑假值
?"abcd"="abc" &.&.比较等号右边字符串是否是其左边字符串从首字符起的子串
.T. &.&.是其子串,取逻辑真值
?"abcd"="bcd" &.&.比较等号右边字符串是否是其左边字符串从首字符起的子串
.F. &.&.不是其子串,取逻辑假值
?"abcd"=="abc" &.&.字符串等长并完全相同比较
.F. &.&.不等长取逻辑假值
5.逻辑运算符:用于作表达式之间的逻辑运算,参加运算的表达式应有逻辑值.运算的结果是逻辑值,如下表:
运算符功能
.Not.,!逻辑非
.and.逻辑与
.or.逻辑或

逻辑运算符的优先级:逻辑非→逻辑与→逻辑或
逻辑运算符的意义是:
A.and.B 只有当A和B都为真时,逻辑运算的结果才为真,否则为假
A.or.B A和B中有一个为真,结果却为真
.Not.A 当A为真值时,结果为假值,当A为假值时,结果为真值.
例:
y=.f. &.&.y的值为逻辑假
?.Not.y
.T. &.&.对y值取反,结果为真
a=3
b=9
?a.T.
?a.T. &.&.两边都为真,结果为真

相关文章


SQL语句基础学习LIKE
SQL语句基础学习之COUNT
SQL语句基础学习之函数
SQL语句基础学习之HAVING
VFP表达式和运算符
Ie和firefox的Js区别
VFP表间连接和VFP表的更新操作
在VFP表单中实现三维动画效果
黑龙江:2007年9月计算机等级考试成绩查询开始
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛