Lua程序设计(第二版)学习笔记(一)

前段时间认真的看了一下《lua程序设计(第二版)》这本书,每一章写一个lua脚本,诸多注释,相信给初学者有一定帮助。

-- 第一章代码

print("hello Hello");

-- 全局函数
function face(n)
if n == 0 then
return 1
else
return n + face(n - 1)
end
end
print(face(100));

-- 1.1 程序快(chunk)
-- 每段代码,源代码文件或者交互模式 的 一行 代码,可以不用分隔符

-- 推出交互模式和解释器 end-of-file/os.exit();
--os.exit(); -- 去掉os前面的注释看看效果
print(face(100));

-- 词汇规范
-- 不能数字开头,避免下划线并跟大写字母标示符
-- 有大小写区分
--[[
这次多行注释
--]]

-- 1.3 全局变量
-- 不为空
b = 100;
print(100);
b = nil;
print(b); -- 这时候b不会全局变量,全局变量必须有值

.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }

.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }

Lua程序设计(第二版)学习笔记(一),布布扣,bubuko.com

时间: 2024-12-24 18:00:05

Lua程序设计(第二版)学习笔记(一)的相关文章

《lua程序设计 第二版》 学习笔记6 -------- 深入函数

-- 第6章 深入函数 -- 函数是一种"第一类值",他们具有特定的"词法域" -- "第一类值":与其他传统类型的值具有相同的权利.例如:存储到变量/table中,作为实参传递给函数或者作为其他函数的返回值 -- "词法域":一个函数可以嵌套在另一个函数中,内部函数可以反问外部函数的变量. local function testFun(x) return 2 * x end -- 函数定义方式1 local testFun

DirectX 9.0c游戏开发手记之“龙书”第二版学习笔记之8: Chap10: Lighting

这一章讲的是光照.光照(lighting)是Direct3D中非常重要的概念,而与之相对应的是材质(material)的概念.如果没有材质的话,那么光照的作用也无法体现. 在较早一些的关于DirectX 9的编程入门书籍里,一般是使用D3DLIGHT9结构体来建立一个光源,而用D3DMATERIAL9结构体来定义物体的材质.我们要做的就是一些很琐碎的家务活,基本上就是创建这些结构体对象.设定其中的参数.启用光照之类的,至于具体实现的细节就非吾等所需(和所能)操心的了. 不过在我们的"龙书&quo

锋利的jquery第二版学习笔记

jquery系统学习笔记 一.初识:jquery的优势:1.轻量级(压缩后不到30KB)2.强大的选择器(支持css1.css2选择器的全部 css3的大部分 以及一些独创的 加入插件的话还可支持XPath)3.出色的Dom封装(简化原本复杂的操作)4.可靠的事件处理机制(跨浏览器兼容性)5.完善的Ajax操作(一个$.ajax()方法全部搞定)6.不污染顶级变量(只使用了一个名为jQuery的对象 其别名$也可随时让出其控制权 见解决和其它库混用时解决冲突部分)7.出色的浏览器兼容性(优秀的j

第一章 开始 Lua程序设计第二版笔记

--第一章 开始--1.1chunk 程序块chunk大小可以任意,一个源代码文件或交互模式中的一行代码都是chunk --1.2词法规范标识符通常保留下划线开头,作为Dummy Variable使用. --1.3全局变量Lua中访问一个未初始化的变量不会引发错误,访问结果是一个nil print(b) -->nil

MongoDB权威指南第二版学习笔记二

数据类型 MongoDB在保留JSON基本键/值对特性的基础上,添加了其他一些数据类型. null null用于表示空值或者不存在的字段:{“x”:null} 布尔型 布尔类型有两个值true和false {“x”:true} 数值 shell默认使用64位浮点型数值. {“x”:3.14} 或 {“x”:3} 对于整型值,可使用NumberInt类(表示4字节带符号整数)或NumberLong类(表示8字符带符号整数) {“x”:NumberInt(”3”)} {“x”:NumberLong(

MongoDB权威指南第二版学习笔记——MongoDB简介

MongoDB简介 MongoDB在功能和复杂性之间取得了很好的平衡,并且大大简化了原先十分复杂的任务,它具备支撑今天主流web应用的关键功能:索引.复制.分片.丰富的查询语法,特别灵活的数据模型.与此同时还不牺牲速度. MongoDB是一款强大.灵活,且易于扩展的通用型数据库.能扩展出非常多的功能,如二级索引.范围查询.排序.聚合,以及地理空间索引. 设计特点 易于使用 MongoDB是一个面向文档的数据库,比关系型数据库有更好的扩展性.用文档代替行.能够仅使用一条记录来表现发展的层次关系.

irectX 9.0c游戏开发手记之“龙书”第二版学习笔记之10: Chap12: Blending

这一章讲的是Blending,包括alpha 混合和alpha 测试两个方面.这一章的内容总体来说比较简单.然而,后面的习题却并不是很简单-- 下面是习题解答部分: 习题1部分: =============================================================================== 这道题让我们研究使用不同的blend factor和blendop所产生的效果.这个实现起来不难,我就不打算详细解释了,大家都能够看懂的.另外,为了简单,我就不

MongoDB权威指南第二版学习笔记(四)—增删改文档下

$slice 如果希望数组的最大长度是固定的,那么可以将 $slice 和 $push 组合在一起使用,就可以保证数组不会超出设定好的最大长度.$slice 的值必须是负整数. 假设$slice的值为10,如果$push 后的数组的元素个数小于10,那么所有元素都会保留.反之,只有最后那10个元素会保留.因此,$slice 可以用来在文档中创建一个队列. db.class.insert({"班级":"1班"}) WriteResult({ "nInsert

学习bash第二版 学习笔记 1 —— bash的简介、检测和安装

shell 区别于内核 是一款命令解析程序. Bourne Again shell (BASH), 创建用于GNU项目. GNU项目由Free Software Foundation(FSF)的Richard Stallman 始创,用于创建一个UNIX兼容的操作系统, 并使用该免费的发布版本替代所有的商业UNIX版本. ?? 你可能不能马上用bash.你的系统管理员可能将你的账号设置为使用系统上的 "标准" shell,你甚至不知道有没有其他shell可用. ?? 键入 echo $

C++Primer第5版学习笔记(三)

C++Primer第5版学习笔记(三) 第四/五章的重难点内容 你可以点击这里回顾第三章内容 因为第五章的内容比较少,因此和第四章的笔记内容合并.   第四章是和表达式有关的知识,表达式是C++的基础设施,本章由三部分组成:         1.表达式概念基础,包括表达式的基本概念,左值和右值的概念,优先级结合律,求值顺序.  2.各种运算符,主要包括算数\关系\逻辑\赋值\递增递减\成员访问\条件\位运算\sizeof\逗号运算符 这10种运算符.  3.类型转换,包括隐式和显式两种转换的规则