设为off时,比对时按顺序从左到右,各取一个字符比对,一样就继续. 当某个字符串取完了就不继续了, 哪怕另一个字符串仍有字符也算相等。
你的两个变量长度都是50,当比较到7位时,f1.lxfs的第7位是3,y1.lxfs的第7位是空格,所以结果位F
你的两个变量长度都是50,当比较到7位时,f1.lxfs的第7位是3,y1.lxfs的第7位是空格,所以结果位F
程序代码:?strcmp("123","123")
?strcmp("1234","123")
?strcmp("123","1234")
?strcmp("1235","1234")
?strcmp("1234","1235")
FUNCTION strcmp(s1, s2)
i = 1
DO WHILE (i<LEN(s1) OR i<LEN(s2)) AND ASC(SUBSTR(s1,i,1))==ASC(SUBSTR(s2,i,1))
i = i + 1
ENDDO
ret = ASC(SUBSTR(s1,i,1)) - ASC(SUBSTR(s2,i,1))
RETURN IIF(ret==0,0,IIF(ret>0,1,-1))
ENDFOR[此贴子已经被作者于2021-8-22 16:31编辑过]
