VFP中关于NULL的简单问题
书上例题X=[123]STORE10TOySTORE.NULL.TOxSTORE$100.2TOz?VARTYPE(x),VARTYPE(x,.T.),VARTYPE(y...
书上例题
X=[123]
STORE 10 TO y
STORE .NULL. TO x
STORE $ 100.2 TO z
?VARTYPE(x),VARTYPE(x,.T.),VARTYPE(y),VARTYPE(z)
X C N Y
1为什么VARTYPE(x,.T.)答案是显示的C?
2x不是NULL了吗?
3题目中X与x是同样的吗? 谢谢大家O(∩_∩)O哈哈~ 展开
X=[123]
STORE 10 TO y
STORE .NULL. TO x
STORE $ 100.2 TO z
?VARTYPE(x),VARTYPE(x,.T.),VARTYPE(y),VARTYPE(z)
X C N Y
1为什么VARTYPE(x,.T.)答案是显示的C?
2x不是NULL了吗?
3题目中X与x是同样的吗? 谢谢大家O(∩_∩)O哈哈~ 展开
1个回答
展开全部
数据类型测试函数VARTYPE( )
格式:VARTYPE(<表达式>[,<逻辑表达式>])
测试<表达式>的类型,返回一个大写字母,函数值为字符型.字母的含义如书P69表2.7所示. 特例:
① 当<表达式>的运算结果是NULL值时,如果<逻辑表达式>为.T.,就返回<表达式>的类型;如果<逻辑表达式>
为.F.或缺省,则返回X(NULL型).
② 当<表达式>是一个数组,则返回第一个数组元素的类型
格式:VARTYPE(<表达式>[,<逻辑表达式>])
测试<表达式>的类型,返回一个大写字母,函数值为字符型.字母的含义如书P69表2.7所示. 特例:
① 当<表达式>的运算结果是NULL值时,如果<逻辑表达式>为.T.,就返回<表达式>的类型;如果<逻辑表达式>
为.F.或缺省,则返回X(NULL型).
② 当<表达式>是一个数组,则返回第一个数组元素的类型
追问
当的运算结果是NULL值时,如果为.T.,就返回的类型
这句话也就是对应了题目中的“VARTYPE(x,.T.)”
首先满足x就是NULL,并且“VARTYPE(x,.T.)“的为.T.
按照上面那句话,那么就应该返回也就是NULL对应的X不是?为什么成了C?
追答
注意:NULL值不是空值,NULL值可以代表是任意类型的数据。VARTYPE(x,.T.)表达式中,x的值是NULL值,但是此前执行x=[123]语句,x的值是字符型,所以返回C。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询