免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: __BlueGuy__
打印 上一主题 下一主题

[函数] 纪念我的第一个Lua程序 [复制链接]

论坛徽章:
2
程序设计版块每日发帖之星
日期:2015-06-17 22:20:00每日论坛发贴之星
日期:2015-06-17 22:20:00
11 [报告]
发表于 2012-10-20 13:54 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
2
程序设计版块每日发帖之星
日期:2015-06-17 22:20:00每日论坛发贴之星
日期:2015-06-17 22:20:00
12 [报告]
发表于 2012-10-20 13:56 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
11
摩羯座
日期:2013-09-16 11:10:272015亚冠之阿尔萨德
日期:2015-06-12 22:53:29午马
日期:2014-04-15 11:08:53亥猪
日期:2014-03-02 23:46:35申猴
日期:2013-12-06 22:07:00亥猪
日期:2013-11-28 12:03:13双鱼座
日期:2013-11-21 14:43:56亥猪
日期:2013-10-23 10:55:49处女座
日期:2013-10-17 18:15:43午马
日期:2013-09-27 17:40:4215-16赛季CBA联赛之青岛
日期:2016-06-22 00:45:55
13 [报告]
发表于 2012-10-20 14:02 |只看该作者
本帖最后由 Ager 于 2012-10-20 14:07 编辑
pmerofc 发表于 2012-10-20 13:54
受教
谢谢
感觉似乎更难把握


不谢啦

脚本语言,大多如此。

如果说作为其宿主的“大语言”程序好比长篇小说的话,这种脚本“小语言”程序则更像诗歌或俳句。

前者需要把握全局,比如布置线索与进程,后者则会在大语境下呈现出玲珑的特性,给人带来一种“蹦跶感”。

以上,仅供参考,呵呵 —— :)

论坛徽章:
2
程序设计版块每日发帖之星
日期:2015-06-17 22:20:00每日论坛发贴之星
日期:2015-06-17 22:20:00
14 [报告]
发表于 2012-10-20 14:13 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
11
摩羯座
日期:2013-09-16 11:10:272015亚冠之阿尔萨德
日期:2015-06-12 22:53:29午马
日期:2014-04-15 11:08:53亥猪
日期:2014-03-02 23:46:35申猴
日期:2013-12-06 22:07:00亥猪
日期:2013-11-28 12:03:13双鱼座
日期:2013-11-21 14:43:56亥猪
日期:2013-10-23 10:55:49处女座
日期:2013-10-17 18:15:43午马
日期:2013-09-27 17:40:4215-16赛季CBA联赛之青岛
日期:2016-06-22 00:45:55
15 [报告]
发表于 2012-10-20 14:18 |只看该作者
pmerofc 发表于 2012-10-20 13:56
我一直最想了解的是LISP


那真是:

东土大周探花郎,素续陆离镜花缘

了,呵呵……

论坛徽章:
5
狮子座
日期:2013-08-20 10:12:24午马
日期:2013-11-23 18:04:102015年辞旧岁徽章
日期:2015-03-03 16:54:152015亚冠之德黑兰石油
日期:2015-06-29 18:11:1115-16赛季CBA联赛之新疆
日期:2024-02-21 10:00:53
16 [报告]
发表于 2012-10-20 14:55 |只看该作者
回复 14# pmerofc


    我也是。所以其实完全放心放开使用的脚本语言只有Lua。因为我通篇读过源代码不止一遍,清楚地知道我写的每行Lua会发生什么事儿……

论坛徽章:
5
技术图书徽章
日期:2013-08-17 07:26:49双子座
日期:2013-09-15 16:46:29双子座
日期:2013-09-25 08:17:09技术图书徽章
日期:2013-09-25 09:11:42天秤座
日期:2013-10-01 16:25:34
17 [报告]
发表于 2012-10-20 16:07 |只看该作者
本帖最后由 __BlueGuy__ 于 2012-10-20 16:09 编辑
starwing83 发表于 2012-10-20 14:55
回复 14# pmerofc


是吗, 那你一定知道不规则数组怎么解析了? 教一下我啊...
Lua 源码里哪一段是解析不规则数组的 ??

论坛徽章:
5
狮子座
日期:2013-08-20 10:12:24午马
日期:2013-11-23 18:04:102015年辞旧岁徽章
日期:2015-03-03 16:54:152015亚冠之德黑兰石油
日期:2015-06-29 18:11:1115-16赛季CBA联赛之新疆
日期:2024-02-21 10:00:53
18 [报告]
发表于 2012-10-20 16:27 |只看该作者
回复 17# __BlueGuy__


     啥叫“解析”?啥叫“不规则数组”??

Lua的唯一数据结构叫做“表”(table),表分为几种形式。就数据结构来说,它存在于Lua源代码的ltable.c文件中,是一个典型的拉链哈希表实现;就Lua库支持来说,它存在于ltablib.c文件中,给予了非常简单的表的运行时支持;就Lua C API来说,表的操作函数存在于lapi.c中,给予了在C中操作Lua表的能力;就表在程序中的表现形式来说(即所谓的table constructor),它存在于lparser.c(这个文件比较大,确切地说是这个文件里面的constructor函数。

表在Lua程序里面表现为由大括号围绕的一个哈希表结构。如果写的是序列,该序列自动从1开始赋予key。说白了Lua的表就是一个专门对数组应用优化过的哈希表。lparser分析表构造器,直接产生字节码到程序中,最后字节码利用表的相关处理函数,在内存中构建出表。

根本不存在解析的问题,也不存在不规则的问题,谢谢。

论坛徽章:
5
技术图书徽章
日期:2013-08-17 07:26:49双子座
日期:2013-09-15 16:46:29双子座
日期:2013-09-25 08:17:09技术图书徽章
日期:2013-09-25 09:11:42天秤座
日期:2013-10-01 16:25:34
19 [报告]
发表于 2012-10-20 16:31 |只看该作者
回复 18# starwing83

char BlueGuy[5][5] =
{
   {1},
   {1, 1},
   {1, 2, 1},
   {1, 3, 3, 1},
   {1, 4, 6, 4, 1}
};

谁会把这个文本格式的数组解析为 c的数组?
   

论坛徽章:
11
摩羯座
日期:2013-09-16 11:10:272015亚冠之阿尔萨德
日期:2015-06-12 22:53:29午马
日期:2014-04-15 11:08:53亥猪
日期:2014-03-02 23:46:35申猴
日期:2013-12-06 22:07:00亥猪
日期:2013-11-28 12:03:13双鱼座
日期:2013-11-21 14:43:56亥猪
日期:2013-10-23 10:55:49处女座
日期:2013-10-17 18:15:43午马
日期:2013-09-27 17:40:4215-16赛季CBA联赛之青岛
日期:2016-06-22 00:45:55
20 [报告]
发表于 2012-10-20 16:32 |只看该作者
starwing83 发表于 2012-10-20 16:27
回复 17# __BlueGuy__

啥叫“不规则数组”??


楼主的意思,可能是指那种其元素也是数组的数组。


您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP