set exact on/off这个命令是VFP中的,作用是用来设置是否精确比较。
"=="是绝对等于,无论set exact在on或off时,如果"=="两边的字符串中对应位置的字符内容不一样或字符串的总长度不一样,都返回.F.。
VFP中字符串的比较是以右边字符向左边字符比较的。
以字符串 "abcd"="abc" 为例进行比较。
1、在set exact on时是精确比较,等于号两边字符串内容和长度必须一致,所以:
"abcd"="abc" 返回.F.
"abcd"=="abc" 返回.F.
2、在set exact off时是非精确比较,系统是拿等于号右边的字符串从首个字符直到最后一个字符和左边的字符串的相应位置字符一个一个比较,如果右边的字符串比较完后有任何一个和左边的不一样,则返回.F.,否则就返回.T.。
"abcd"="abc" 返回.T.
"abcd"=="abc" 返回.F.