| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 928 人关注过本帖
标题:帮忙解释段代码
只看楼主 加入收藏
ylqs1314
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2010-4-7
结帖率:100%
收藏
 问题点数:0 回复次数:3 
帮忙解释段代码
const
   ARR_T:array[0..5] of Byte=(6,0,31,63,127,255);//第一个数为数组长度,


function GetRange(n:Byte):Byte;//取得n在arr_T所在的区间,从0开始
var
   len,i:Integer;
begin
   len:=ARR_T[0];
   for i:=2 to len-1 do
     if((n>ARR_T[i-1])and(n<=ARR_T[i]))then break;
   result:=Byte(i-2);
end;
搜索更多相关主题的帖子: 代码 解释 
2010-05-23 13:22
ylqs1314
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2010-4-7
收藏
得分:0 
可以的话加我QQ,教下我吧,谢谢了
61404002
2010-05-23 13:23
mohao163
Rank: 5Rank: 5
来 自:南宁
等 级:职业侠客
威 望:2
帖 子:79
专家分:383
注 册:2009-9-25
收藏
得分:0 
这段代码其实不难,在前边定义一个数组常量ARR_T,里边有6,0,31,63,127,255,6个元素
然后函数function GetRange(n:Byte):Byte里
先让len:=ARR_T[0];
即len = 6;

然后使用了for i:=2 to len-1 do
for循环从i=2开始到i=5
如果 if((n>ARR_T[i-1])and(n<=ARR_T[i]))then break;
就是从参数里传进来的n大于ARR_T[i-1]的元素并且小于ARR_T[i]的元素则跳出循环,否则将会执行到i=5。
最后返回Byte[i-2里的元素]

2010-05-26 13:38
jian5986
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2012-11-17
收藏
得分:0 
学习一下
2012-11-20 10:15
快速回复:帮忙解释段代码
数据加载中...
 
   



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

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