当前位置:
文档之家› 01 Visual Foxpro中的常量变量表达式
01 Visual Foxpro中的常量变量表达式
?变量的值怎么改变呢 例如: aa=3, 现在我想把变量值改为“我爱北京天安 门”,应该怎么办呢? 你只需要再使用一次赋值命令把新的 内容定义给aa就行了! aa= [我爱北京天安门]
内存变量的几点说明 1.内存变量有系统内存变量与内存变量之
分。前者由VFP自动产生,后者由我们通过
赋值命令产生。 系统内存变量不能被释放。只有关闭 VFP时才由VFP自己释放。但可以显示。
由字符运算符将字符型数据连接起来,
其运算结果是一个字符串。
注: 字符运算符只有+与-。 +:将运算符两边的两个字符串首尾相连形 成一个新的字符串。
"123"+"456" "北京□"+"欢迎您"
"123456" "北京□欢迎您"
-:两个字符串相连,并将前字符串尾部的空 格移到合并后的新字符串的尾部。
格式2:(可同时定义多个变量)
STORE <表达式> TO <内存变量名表>
计算表达式的值,并将结果赋给内存变量
表中的每一个变量。
例:STORE 2+4 TO A,B,C
格式1:<内存变量名>=<表达式> 格式2:STORE <表达式> TO <内存变量名表 这两个命令称为赋值命令。 功能:在定义内存变量的同时确定内存变 量的值和类型。 当电脑关(断)电,内存变量就消失,能 把它保存起来吗?(可以的)
.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|
表达式中运算级别 在同一表达式中,如果使用了不同类型 的运算符,则各种运算的优先顺序由高到低 为: 括号 数值运算/字符串运算 关系运算 逻辑运算
ASD=‘ LKJ=‘
[
[
[
医
[
’
[ [ [ [ [
ASD- LKJ
[
[
[ [ [
‘ 广
[
ASD+LKJ
‘ 广
[ [
广 东
’
东
医
[
东
医
’
’
3.日期表达式(expD)
运算结果是某个具体日期的式子。
注: D型数据能和N型的进行运算。
对于T型数据也是一样。
D
± N =D
D+D ?
- D =N
4.逻辑表达式(expL)
(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 命令
空日期的表示方法:{}, {^}, {/}, {-},{.}
取消严格日期格式: set strictdate to 0 这时可以用形如 {mm-dd-yy} 或{mm-dd-yyyy} 来表示日期,其中 - 分隔符也可以用 / , . 来代 替。
恢复严格日期格式: set strictdate to 1
Visual Foxpro中定义了六种基本数据类型:
数值型,字符型,货币型,日期型 日期时间型,逻辑型 数据操作原则: 各数据的类型必须匹配,特定的操作只 能对特定类型的数据进行。
3.1.1常量的类型与表示
常量:是指在数据处理过程中其值保持 不变的量。
常量有六种类型:
数值型 字符型 货币型 日期型 日期时间型 逻辑型
3*(a/b+c^2*(1+5*(p-q)))
关系运算规则:
(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.
格来代替,显示出来的结果都是一样。 例如:1996年03月20日早上11时35分15 秒表示为:
{^1996-03-20,11:30:15 a}
6. 逻辑型常量(L型常量)
用来表示某个条件成立与否,因此只有 真和假两个值。 .T. .t. .Y. .y. 表示真。 .F. .f. .N. .n. 表示假。
表达式的书写规则 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
系统内存变量: 是VFP自动生成和维护的变量,均以下
划线开头,用于控制外部设备,屏幕显示格
式,或处理有关计算器、日历、剪贴板等方
面的信息。
例如:_screen.fontsize 设置屏显字号
_ screen.fontname 设置屏显字体
其他可查阅相关文献。
2. 按照内存变量作用域的不同,可分为全局 变量,私有变量和局部变量。 这部分内容留待第七章学习。
格式:SET CENTURY ON|OFF
功能:设置年份的位数,ON指定年份为4位,
OFF指定年份为2位。
即:2007与07的差别
5.日期时间型常量 (T型常量)
日期时间型常量包括日期和时间两部分. {^yyyy-mm-dd[,hh[:mm[:ss]][a|p]]}
其中日期与时间的分隔符 , 也可以用空
为四类:
数值型表达式
字符型表达式
日期型表达式
逻辑型表达式
1.数值表达式(expN)
由算术运算符将数值型数据连接起来,
其运算结果是一个数值型的常数。
算术运算符: ( ) + - * / ^或** 乘方 % 取余
取余与mod函数是一样的,下一节我们再
学习它的运算规则。
2.字符表达式(expC)
(即用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型常量)
Visual Foxpro
程序设计
广东医学院 信息工程学院 2014年02月25日
第三章 Visual Foxpro语言基础 常量、变量与表达式:
常量的概念、常量的类型与表示 内存变量的概念、内存变量创建与类型 表达式的概念、表达式的创建与类型
VFP中数据的特点
数据元素: 常量,变量, 函数和表达式 数据类型是数据的一个重要属性。
变量的类型:内存变量与字段变量。 (字段变量在第二周介绍) 内存变量:是一个临时的工作单元; 用于存 储常数或程序运行的中间结果或最终结果。
如何让变量具有不同的值? 内存变量的赋值:
格式1:<内存变量名>=<表达式>
计算等号右边表达式的值,并将结果赋 给等号左边的内存变量。 例:姓名=800 或 工资=[林] 或 yy=$2 或 a_b_c=.T. 以上与数学的: 令 t=2 是同一个意思。
3.2 运算符与表达式
表达式(Expression):将常量、变量及函 数按一定规则用运算符连接起来的一个有意 义的式子。
[表达式三元素:常量,变量,函数。]
表达式也有类型的区分,其类型由表达 式运算结果的类型来决定。 表达式的特例是单个常量或变量(最简 形式).
表达式类型由运算结果的类型决定,分
I'm a student "IBM-PC " 计算机
" I ' m a student " 或 [ I ' m a student ] '"IBM-PC"计算机'或["IBM-PC"计算机]
3. 货币型常量(Y型常量) 由符号 $ 开头的一个表示货币量的 数字,默认4位小数,超过4位自动四舍 五入。
运算结果是一个逻ห้องสมุดไป่ตู้值.T.或.F.的式子。
能得到逻辑值的运算常见有两种,
其一是关系运算
其二是逻辑运算。
逻辑运算例子:
.T. .AND. .T. → .T.
4.逻辑表达式(expL) 关系运算式的结果是一个逻辑量,所以关 系运算式属于逻辑表达式的一种。 [注意:没有关系表达式的说法!]
逻辑表达式中的关系运算式:
1.数值型常量(N型常量)
由数字、小数点和正负号构成的各种整
数、小数或实数,长度最大为20。