| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 827 人关注过本帖
标题:[求助]哪位高手能帮我解释一个这段程序里是什么转换
只看楼主 加入收藏
shf0729
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2005-5-24
收藏
 问题点数:0 回复次数:2 
[求助]哪位高手能帮我解释一个这段程序里是什么转换

找人做了个程序 有些密码转换看不懂 还望各位高手指点下小弟他是做了什么转换 if alltrim(thisform.text3.value)==alltrim(thisform.text2.value) append blank local lcPassword lcPassword = 0 for i = 1 to len(alltrim(Thisform.text2.value)) lcPassword = lcPassWord + ASC(SUBSTR(ALLTRIM(Thisform.text2.value),i,1)) endFor lcPassWord = ALLTRIM(str(bitxor(lcPassword,12345678))) thisform.text2.value=lcPassword

insert into passwordb(用户名,密码); values(thisform.text1.value,thisform.text2.value) messagebox("用户添加成功,"+chr(13)+"请记住用户名和密码",0+64,"系统提示") thisform.release do form forms\用户管理 else messagebox("新密码和确认密码不一致",0+64,"系统提示") thisform.text2.value='' thisform.text3.value='' thisform.text2.setfocus endif dele for 用户名=" " .or. 密码=" " pack

搜索更多相关主题的帖子: 解释 
2005-05-31 09:53
fanty123
Rank: 1
等 级:新手上路
帖 子:130
专家分:0
注 册:2005-5-29
收藏
得分:0 
if alltrim(thisform.text3.value)==alltrim(thisform.text2.value)     &&\当两个文本框写的属性相同时
appendblank                                                                               就进入追加状态
locallcPassword                                                                            定位ICPASSWORD这个变量
lcPassword =0                                                                                 设这变量为0
for i = 1 tolen(alltrim(Thisform.text2.value))                                 ||从1循环到TEXT2.VALUE的值
lcPassword = lcPassWord + ASC(SUBSTR(ALLTRIM(Thisform.text2.value),i,1))   ICPASSWORD的值变为它本身加上它每里面每一位变量的ASCII转变码
endFor
lcPassWord = ALLTRIM(str(bitxor(lcPassword,12345678)))
thisform.text2.value=lcPassword               把TEXT2.VALUE的值变为ICPASSWORD的值
insert intopasswordb(用户名,密码);                                       
values(thisform.text1.value,thisform.text2.value)                           ||  在表中  追加用户名和密码,
messagebox("用户添加成功,"+chr(13)+"请记住用户名和密码",0+64,"系统提示")
thisform.release
do formforms\用户管理                                                                  
else                                                                                            ||如果密码不正确,就删除新追加的用户名和密码
messagebox("新密码和确认密码不一致",0+64,"系统提示")
thisform.text2.value=''
thisform.text3.value=''
thisform.text2.setfocus
endif
dele for 用户名=" " .or. 密码=" "
pack

编程语言无一不精,无一不通
2005-05-31 16:59
fown
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:58
帖 子:1229
专家分:171
注 册:2005-5-26
收藏
得分:0 

len( ) 函数

返回字符表达式中字符的数目。

语法 LEN(cExpression) 参数 cExpression 指定字符表达式,len( ) 函数返回其字符数目。 返回值类型 数值型

说明 len( ) 函数可用于确定字符表达式的长度。

substr( ) 函数

从给定的字符表达式或备注字段中返回字符串。 语法 SUBSTR(cExpression, nStartPosition [, nCharactersReturned]) 参数 cExpression 指定要从其中返回字符串的字符表达式或备注字段。 StartPosition 指定返回的字符串在字符表达式或备注字段 cExpression 中的位置,cExpression 的第一个字符是位置 1。 注意:如果 TALK 设置为 ON,并且 nStartPosition 大于 cExpression 中的字符数目,那么 Visual FoxPro 产生错误信息;如果 TALK 设置为 OFF,那么返回一个空字符串。 nCharactersReturned 从 cExpression 中返回的字符数目。如果省略了 nCharactersReturned 参数,那么返回字符表达式结束前的全部字符。 返回值类型 字符型 说明 SUBSTR( ) 从一个字符表达式或备注字段中返回一个字符串。该字符串起始于字符表达式或备注字段的指定位置,到指定数目字符结束。 当在调试窗口中发出 substr( ) 函数时,对于备注字段,SUBSTR( ) 不会返回值。要在调试窗口中返回值,可在 ALLTRIM( ) 函数中放入备注字段名,并且将 ALLTRIM( ) 函数放入 substr( ) 函数中。

thin SUBSTR( ).

asc( ) 函数

返回字符表达式中最左边字符的 ANSI 值。

语法 ASC(cExpression) 参数 cExpression 指定字符串表达式。函数仅返回 cExpression 中第一个字符的 ANSI 值,忽略其他字符。 返回值类型 数值型

说明 asc( ) 函数返回字符在当前代码页字符表中所处的位置。每个字符都有唯一的 0-255 之间的 ANSI 值。 在 FoxPro for MS-DOS 中,打开 ASCII 字符桌面附件可以得到字符及其 ANSI 值的列表。

看完这三个函数的作用,你应该会明白了吧


有人说VFP不行了,我想说,你连VFP十分之一的功能都不会用,你怎么知道VFP不行?本人拒绝回答学生的问题我回答问题一般情况下只提供思路不提供代码,请理解
2005-05-31 20:51
快速回复:[求助]哪位高手能帮我解释一个这段程序里是什么转换
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.042974 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved