01 Visual Foxpro中的常量变量表达式

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
由字符运算符将字符型数据连接起来,
其运算结果是一个字符串。
注: 字符运算符只有+与-。 +:将运算符两边的两个字符串首尾相连形 成一个新的字符串。
"123"+"456" "北京□"+"欢迎您"
"123456" "北京□欢迎您"
-:两个字符串相连,并将前字符串尾部的空 格移到合并后的新字符串的尾部。
为四类:
数值型表达式
字符型表达式
日期型表达式
逻辑型表达式
1.数值表达式(expN)
由算术运算符将数值型数据连接起来,
其运算结果是一个数值型的常数。
算术运算符: ( ) + - * / ^或** 乘方 % 取余
取余与mod函数是一样的,下一节我们再
学习它的运算规则。
2.字符表达式(expC)
格式2:(可同时定义多个变量)
STORE <表达式> TO <内存变量名表>
计算表达式的值,并将结果赋给内存变量
表中的每一个变量。
例:STORE 2+4 TO A,B,C
格式1:<内存变量名>=<表达式> 格式2:STORE <表达式> TO <内存变量名表 这两个命令称为赋值命令。 功能:在定义内存变量的同时确定内存变 量的值和类型。 当电脑关(断)电,内存变量就消失,能 把它保存起来吗?(可以的)
Visual Foxpro中定义了六种基本数据类型:
数值型,字符型,货币型,日期型 日期时间型,逻辑型 数据操作原则: 各数据的类型必须匹配,特定的操作只 能对特定类型的数据进行。
3.1.1常量的类型与表示
常量:是指在数据处理过程中其值保持 不变的量。
常量有六种类型:
数值型 字符型 货币型 日期型 日期时间型 逻辑型
空日期的表示方法:{}, {^}, {/}, {-},{.}
取消严格日期格式: set strictdate to 0 这时可以用形如 {mm-dd-yy} 或{mm-dd-yyyy} 来表示日期,其中 - 分隔符也可以用 / , . 来代 替。
恢复严格日期格式: set strictdate to 1
(即用E或e来表示以10为底的指数):
1.234E+15或1.234E15(表示1.234×1015),
1.234E-15(表示1.234×10-15)。
【注意】E或e之前必须是非零的有效数字,
之后用整数来表示具体的指数值。
例如:E-6是错误的表示方法,
1E-6是正确的表示方法。
2. 字符型常量(C型常量)
?变量的值怎么改变呢 例如: aa=3, 现在我想把变量值改为“我爱北京天安 门”,应该怎么办呢? 你只需要再使用一次赋值命令把新的 内容定义给aa就行了! aa= [我爱北京天安门]
内存变量的几点说明 1.内存变量有系统内存变量与内存变量之
分。前者由VFP自动产生,后者由我们通过
赋值命令产生。 系统内存变量不能被释放。只有关闭 VFP时才由VFP自己释放。但可以显示。
Visual Foxpro
程序设计
广东医学院 信息工程学院 2014年02月25日
第三章 Visual Foxpro语言基础 常量、变量与表达式:
常量的概念、常量的类型与表示 内存变量的概念、内存变量创建与类型 表达式的概念、表达式的创建与类型
VFP中数据的特点
数据元素: 常量,变量, 函数和表达式 数据类型是数据的一个重要属性。
表达式的书写规则 1. 在VFP中,没有上标和下标,所有的符号 都是在一条线上等高的,数学表达式中省略 的乘号这里也不能省略。
ax bx c
2
a*x**2+b*x+c 或 a*x^2+b*x+c
2. 所有括号均用小括号,并且括号必须成对 出现。
a 2 3 c 1( 5 p q) b
ASD=‘ LKJ=‘
[
[
[

[

[ [ [ [ [
ASD- LKJ
[
[
[ [ [
‘ 广
[
ASD+LKJ
‘ 广
[ [
广 东



[




3.日期表达式(expD)
运算结果是某个具体日期的式子。
注: D型数据能和N型的进行运算。
对于T型数据也是一样。
D
± N =D
D+D ?
- D =N
4.逻辑表达式(expL)
.T.
.T. .F. .F.
.T.
.F. .T. .F.
.F.
.F. .T. .T.
.T.
.F. .F. .F.
.T.
.T. .T. .F.
例如:-2<x<5
→ x>-2 and x<5 y≥|x|
→ y>= |x| or y<=- |x|
表达式中运算级别 在同一表达式中,如果使用了不同类型 的运算符,则各种运算的优先顺序由高到低 为: 括号 数值运算/字符串运算 关系运算 逻辑运算
1.数值型常量(N型常量)
由数字、小数点和正负号构成的各种整
数、小数或实数,长度最大为20。
例如:21,10.25,-1.567 等。
【注意】在VFP中,分数及百分数并不 是一个N型常量。 系统把n/m看成运算, 故VFP无分
数。
例如:1/2,30%不是N型常量。
数值型常量也可以用科学计数法表示
3*(a/b+c^2*(1+5*(p-q)))
格式:SET CENTURY ON|OFF
功能:设置年份的位数,ON指定年份为4位,
OFF指定年份为2位。
即:2007与07的差别
5.日期时间型常量 (T型常量)
日期时间型常量包括日期和时间两部分. {^yyyy-mm-dd[,hh[:mm[:ss]][a|p]]}
其中日期与时间的分隔符 , 也可以用空
关系运算规则:
(3)D型数据依次按年月日的前后顺序比较,
日期在前为小。
例如,{^2004/04/17}<{^2004/04/18}
(4)L型数据始终是“真”>“假”
例如,2>3<(3<4) → .T.
(5)字符型数据自左向右逐个比较,字符的排列 顺序决定大小,排列在前者为小,排列在后者 为大。
空格<"0"~ "9"<"a","A", "b", "B"~ "z", "Z"<汉字 例如:?"aBc">"abd" .F.
变量的类型:内存变量与字段变量。 (字段变量在第二周介绍) 内存变量:是一个临时的工作单元; 用于存 储常数或程序运行的中间结果或最终结果。
如何让变量具有不同的值? 内存变量的赋值:
格式1:<内存变量名>=<表达式>
计算等号右边表达式的值,并将结果赋 给等号左边的内存变量。 例:姓名=800 或 工资=[林] 或 yy=$2 或 a_b_c=.T. 以上与数学的: 令 t=2 是同一个意思。
用关系运算符联结起来的式子。
关系运算符(共有八类):
运算符 > = >= ==
说明 大于 等于 大于等于 精确匹配
运算符 < <> != <= $ #
说明 小于 不等于 小于等于 包含
关系运算规则:
关系运算主要是进行数据大小的比较。 (1) 各种算符的优先级相同。 (2) 算符两边的数据类型要相同。 数据类型只能是:N、C、D、L ==与$只用于C型比较。
格来代替,显示出来的结果都是一样。 例如:1996年03月20日早上11时35分15 秒表示为:
{^1996-03-20,11:30:15 a}
6. 逻辑型常量(L型常量)
用来表示某个条件成立与否,因此只有 真和假两个值。 .T. .t. .Y. .y. 表示真。 .F. .f. .N. .n. 表示假。
? [工行]$[工商银行] ?[张三]<[李四] .F.
.F.
逻辑表达式之逻辑运算式:
由逻辑运算符将逻辑型数据连接起来的式
子。 逻辑运算符有: ( ) ; NOT 或! ; AND; OR 且其运算优先按此顺序。
.not.是单目,.and.和.or.是双目算Βιβλιοθήκη Baidu。
逻辑运算规则表:
A B .NOT.A A.AND.B A.OR.B
(1)由汉字、字母、数字和下划线以及它们的 组合,而且必须以汉字、字母或下划线开 头。不能含有空格。 如 student_1号, ttt,非变量 (2)变量名的最大长度为128个字符。
【注意】一个汉字的长度为2个字符
(3)不能使用VFP的保留字 所谓保留字是指VFP内部已用来作为某 些用途的字符,包括命令关键字,函数名和 系统内存变量名等。 例如:SET、DATE、ON 等。
I'm a student "IBM-PC " 计算机
" I ' m a student " 或 [ I ' m a student ] '"IBM-PC"计算机'或["IBM-PC"计算机]
3. 货币型常量(Y型常量) 由符号 $ 开头的一个表示货币量的 数字,默认4位小数,超过4位自动四舍 五入。
【注意】逻辑值前后的小圆点 . 不能缺少,
且逻辑值固定用一个字节表示。
3.1.2变量的产生与表示
变量: 在VFP中,一个不改变的符号在不同 的时候具有不同的值,该符号称为变量。 变量的两个关键问题: 1.变量如何表示? 2.如何让变量具有不同的值?
变量的命名规则:
[变量命名三规则:符号, 长度, 保留字]
运算结果是一个逻辑值.T.或.F.的式子。
能得到逻辑值的运算常见有两种,


其一是关系运算
其二是逻辑运算。
逻辑运算例子:
.T. .AND. .T. → .T.
4.逻辑表达式(expL) 关系运算式的结果是一个逻辑量,所以关 系运算式属于逻辑表达式的一种。 [注意:没有关系表达式的说法!]
逻辑表达式中的关系运算式:
系统内存变量: 是VFP自动生成和维护的变量,均以下
划线开头,用于控制外部设备,屏幕显示格
式,或处理有关计算器、日历、剪贴板等方
面的信息。
例如:_screen.fontsize 设置屏显字号
_ screen.fontname 设置屏显字体
其他可查阅相关文献。
2. 按照内存变量作用域的不同,可分为全局 变量,私有变量和局部变量。 这部分内容留待第七章学习。
3.2 运算符与表达式
表达式(Expression):将常量、变量及函 数按一定规则用运算符连接起来的一个有意 义的式子。
[表达式三元素:常量,变量,函数。]
表达式也有类型的区分,其类型由表达 式运算结果的类型来决定。 表达式的特例是单个常量或变量(最简 形式).
表达式类型由运算结果的类型决定,分
?$-610.23 ?$123.56728 -610.2300 123.5673
4.日期型常量(D型常量) 日期型常量用来表示一个确切的日 期,用花括号作为定界符。 默认格式:{^yyyy/mm/dd} 其中分隔符/可用-或.来代替; ^表示 该日期格式是严格的。 例如:{^2008/08/08}
(1)SET DATE TO命令格式: SET DATE TO AMERICAN | ANSI | BRITISH | FRENCH | GERMAN |ITALIAN|JAPAN|USA|MDY |DMY|YMD 功能:设置当前日期的格式 常用的是:SET DATE TO ANSI
(2)SET CENTURY 命令
字符型常量是用定界符括起来的字符
串。(一切能印刷的文字或符号)。 定界符有三种:单引号 ' 、双引号 " 和方 括号[ ],三者功能相同。 【注意】定界符要配对使用才能说明要指定 的字符串。 例如: 'abc' ,"123" ,[李刚 先生]
字符型常量 的最大长度为254字符。
【注意】当某一种定界符本身就是字符串的 组成部分时,就应该选择另一种定界符来界 定该字符串。
相关文档
最新文档