mthinking 发表于 2010-3-28 20:53:57

关于fish程序的疑问?

小弟正在学习fish,下面是段关于监测桩承台竖向荷栽的程序,没看懂,哪为大侠好心给分析分析啊?



defzs_top


    ad=top_head

    zftot=0.0

    loop while ad #null 
       gp_pnt=men(ad+1)

       zf=gp_zfunbal(gp_pnt)

       zftot=aftot+zf


       ad=men(ad)

    end_loop

zs_top=zftot/0.1414

end

我一直高不懂的是,
1.象top_head这种变量(类似的经常在程序开头出现,如gp_head,pnt_head)是自己定义的么?但就直接这么出现就可以使用了吗?
2.ad=men(ad)?ad到底是变量地址还是变量(内容)?
3.里面有两次使用到了men(aaa)函数,在书里面介绍该函数有两种用法,一个是设置或返回变量aaa的内存地址,一个是aaa作为内存地址时返回其相应的内容,在上面程序里是如何使用的?

其实主要是men( )这个函数不懂,有时又会见到下面这样 的程序:
deffind_add
      top_head=null
      gp_pnt=gp_head                            (这个head又出现了。。。)
      loop while gp_pnt #null
         ifgp_zpos(gp_pnt)>0.5then
             new=get_men(2)                     (这是取2个内存地址嘛,首地址赋给new)
             men(new)=top_head            (men( )怎么在左边呢?谁给谁赋值?)
             men(new+1)=gp_pnt                (依旧?)
             top_head=new
         end_if
         gp_pnt=gp_next(gp_pnt)
   endloop
end



小弟刚刚学习,那为前辈不吝赐教啊 ?给彻底的分析分析这两段程序,大恩大德感激不尽,,,

mthinking 发表于 2010-4-4 21:39:41

不会没有人知道吧
页: [1]
查看完整版本: 关于fish程序的疑问?