由于 本质上使用的是 8!( 字符串用两个字节的空间来存储一个字符,因此当相
同的字符串变量传递给 ! 函数和 ! 函数时会出现不同的返回值。例如,对于一个包含
个字符的字符串,使用 ! 函数时返回值为 ,使用 ! 函数则为 。
使用强类型变量即强制声明该变量的类型时,! 函数会返回存储该变量所需的字节
数。例如,长整型变量的长度为 。
下面的示例说明了为什么要显式声明数据类型:
#47
5' !"
6'
5')
6')
9" !5'<返回
9" !6'<返回
?!#47
很显然,''! 类型变量比强制声明的类型变量要占用更多的内存。
格式化字符串
可以使用 ' 函数规定输出的字符串的格式,其语法为:
'- !1A '1Q'& AD+1QD+ A&'222
其中,参数 - ! 必须,为任何有效的表达式;其余参数均可选。参数 A ' 表示所
要采用的格式,参数 Q'& AD+ 使用常数,表示一星期的第一天,参数 QD+ A&'
使用常数,表示一年的第一周。
在参数 A ' 中,使用字符“RI,表示空格或字符占位符,如果在输入的字符串相应位置
有字符,则显示该字符,否则显示空格;使用字符“>I,表示空或字符占位符,如果在输入
的字符串的相应位置有字符,则显示该字符,否则不显示;使用字符“0I,则将所有字符显
示为小写格式;使用字符“*I,则将所有字符显示为大写格式;使用字符“!”,强制占位符
从左向右填满, 满足默认为从右向左。
例如下面的代码:
.4
.4) ';;;RRR>>>>>>>;<返回
.4) ';;;>>>>>>>>>>;<返回
在 ' 函数中,还可以同时格式化普通字符串和空字符串,只须在指定的格式中用分号
隔开两个部分,第一部分用于非空字符串,第二部分用于空字符串。例如:
.4) ';;;RRR>>>>>>>S3 EB !;<返回
.4) ';;;RRR>>>>>>>S3 EB !;<返回 3 EB !
又如,下面的代码将字母全部转换为大写:
.4
.4) ';J55 ;;*RRRRR;M返回 J?.
同理,可以使用“0I将字母全部转换为小写。
' 函数的简要使用规则:
允许用预先定义或用户定义的格式来建立多种用于输出字符串、数字和日期时间数据
的方法。
创建用户定义的数值格式最多可以有四个部分,每个部分代表一种不同类型的数值,且
用分号分隔。第一部分在单独命名使用时可用于所有值,与其它多个部分一起使用时只用