3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

https://yq.aliyun.com/articles/585612

学东西一定是打破沙锅学到底,有问题就解决问题,不要试图去回避或者放弃解决当前的问题,如果总是回避或者放弃你就永远无法越过了..你的能力也就这样了,你的自学和解决问题的能力永远也不会得到提高....这东西就是一个定时炸弹,保不定哪天就爆炸了。然后你就被炸伤了,轻伤还好说,重伤你就放弃了....

文哥说现在很多人其实是浮躁的,只想着拿过来轻轻松松就用,尤其是现在的大学生,没错,看现在学技术的人很多,但是学成的人却很少,都说是学生太懒了,有一句话说的好"如果说有一部分学生不听课是学生的错,大部分学生不听课你就该考虑你自己了".

但是社会的进步怎么能离得开技术人才呢.......

我希望能用自己的通俗易懂的技术文章唤起很多人学习的乐趣..让知识变得从未如此性感....

知识是枯燥的吗??就我现在感觉,知识就是工具,也是乐趣.

知识难吗?那要看是学习的人类已知的还是学习人类未知的......我不是搞科学研究的,所以学的知识都是人类已知的,已知的都是人类以书面形式书写的规定好的.难吗??额,想想我也是人,不是太傻,也不算笨....最重要的就是看对知识的解释的人的水平了,因为人的水平有高低,所以遇到不同水平的人(老师)解释的文章,会让自己感觉到难易程度不一样,,,,说到头-----老师水平的高低

又瞎扯了,,,,,,,,

今天说的比较多,也比较重要....

用的这个软件测试lua的程序

3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

 

自己不再用luastudio,因为老是会强退。。。

先说什么呢,,想一想

如果不会lua请看我这一系列的文章

3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

就5篇而已,提个醒,不要偷懒,花一两个小时敲敲键盘,后期你会比光看不练的不知道省多少时间,从来不骗人,要不然自己也不会在什么都不知道的情况下入手模块半小时就实现了用手机远程控制它......自学能力也要慢慢积累不是,积累到一定的程度,,,,你总会时不时的佩服自己...

再说说数组吧 table

 注意:前几篇文章说过的不再赘述

这个应该知道吧,lua的数组标号可以是数字也可以是字符 a.A == a["A"]

3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

 

看一个函数

 3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

 

现在说一个函数  select

3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

前面那个数控制,用来指定一个起始点; 然后select函数将返回指定的多重返回值序列中  起点开始 到 序列末尾为止  的部分

 

3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

 

 

 

 3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

我现在需要得到传进来的值

第一种

3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

第二种

3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

...................数组碰见  nil   不结束了.......................

可以看下这篇文章

http://see.sl088.com/wiki/Lua_select

算啦看下一个

3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

看来 arg默认接收第一个参数

 

 

上面只是铺垫

用lua开发过WIFI  的朋友发没发现一个文件里面的全局变量和函数不用做任何的设置就可以在另一个文件里面用了(前提前一个文件先加载)

先说一句,,别忘了数组的变量可以是函数

3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

咱现在看Air怎么调用的

3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

 

 3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

 

如果写的程序少没啥子问题...万一多了...变量函数一大堆.....真怕重名....就乱了

所以呢最好是每个文件能够独立起来,然后我用到哪个文件里面的变量或函数就利用某种途径调用,,,,,

还记不记得C++里面有命名空间的概念??

现在看lua怎么办

table起了大作用,,,因为table 既可以存变量又可以存函数,,,,,

如果table在一个文件里面是局部的,然后呢把变量个函数都存进去,,,,,然后通过某种方式调用这个table,然后用里面的函数和变量不就行啦....

现在看一下怎么写

第一种

文件名字和里面数组的名字不一样

3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

等同于

3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

 

 第一种方式更简洁....以后就用第一种方式

 

 

再看看文件名字和里面数组的名字一样

 3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

 

 但是现在还有问题,,,里面的还是全局变量....导致别的地方还是可以随意的调用

改一下

3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

但是呢还是不方便

3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

 

 

 

 

接着改

3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

 

 3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

 

 说一个 数组  _G  这个_G就是存了一个文件里面的所有用到的命名空间(实质就是一个文件里面的所有全局变量)

3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

 

其实_G 应该说是存储的咱文件里的全局变量,上面的那些打印出来的如:mode就是咱这个文件的全局变量,只不过这家伙是一个数组罢了

咱可以试一下

3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

 

 

 

写的太多了,,,后面的放到下一篇

上一篇:GDB调试技巧:gdb at pid无法调试的问题


下一篇:Objective-C:NSSet和NSMutbaleSet的用法