暑假的時候在家呆了半個月,準確的說應該是大三的暑假,在這半個月的時間裡自學了lua.說起學習lua,也算是
自己第一次做的沒有目的的學習吧,因為當時完全沒有對lua的需求.以至於到現在都不知道當時是為什麼學習lua
的,就如大二的時候學python一樣.
現在就複習一下,然後找點東西寫點**. 關於學習lua,我只是看過《也只是一部分,並且沒有認真的拜讀巴西作者的神作.有時間應該把原始碼拿出來再看看,lua是用標準c寫的,是很不錯的
標準c教程.
今晚看了《不追究原因了,現在就重新來過一邊吧,如果以後還是會忘記的話,記錄下來也可以那過來做複習用.
1.關於lua語言的作者以及背景,就不多說了. lua大多都是作為指令碼語言使用,一直都是配角,當然,也有些時候不是.像
《憤怒的小鳥》,就是完全使用lua開發的.
2."/usr/bin/env lua"這句是什麼意思呢?
在《編寫指令碼檔案的時候,需要在指令碼檔案頭新增一句,用來標識指令碼直譯器的路徑.換句話說,可以使用"/usr/bin/lua"來
代替上面這句.那麼下面就有個問題了,"env"是什麼東西? 是工具,至於這個工具是用來做什麼的.可以在終端執行一下
來看看.
1 defaults_path=/usr/share/gconf/ubuntu.default.path
2 xdg_config_dirs=/etc/xdg/xdg-ubuntu:/etc/xdg
3 path=/usr/local/cuda-5.0/bin:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
4 desktop_session=ubuntu
5 pwd=/home/respawn/lua_workplace/helloworldlua
6 xmodifiers=@im=fcitx
7 gnome_keyring_pid=1715
8 lang=zh_cn.utf-8
9 mandatory_path=/usr/share/gconf/ubuntu.mandatory.path
11 compiz_config_profile=ubuntu
12 gdmsession=ubuntu
很容易看出來,上面是一系列和系統相關的配置,相信對於不同版本的linux都是不同的,當然我的是ubuntu.
所以當需要將lua作為指令碼使用的時候,可以使用"/usr/bin/lua","/usr/local/bin/local"等這種方式來表示lua直譯器,
但是這麼做都依賴系統版本,所以使用env可以讓我們的指令碼移植性更好.
3.lua資料型別.
lua中有8種資料型別,分別是:nil,boolean,number,string,userdate,function,thread,table.其中最重要的就是table.
(ps:變數沒有預定義型別.)
4.關於table的語法糖區別:
a.x 和 a[x] 的不同?
1) a.x 表示的是a["x"],表示的是用字串"x"索引table.
2) a[x] 表示的是按照變數x的值索引.
這兩者之間的區別最簡單的直觀理解就是使用第二種情況需要變數x已預先被初始化,否則索引結果為nil,而第一種情況
則需要索引中有"x".所以索引乙個table,使用語法糖方法比較簡單,省去操作.
其他資訊請參照書本< 每行 都可稱作為乙個 程式塊 lua語句之間不需要分隔符。使用空格即可,當然換行 和 也可以。style 1 a 1 b a 2 style 2 a 1 b a 2 style 3 a 1b a 2 分號可有可無 dofile 引導程式庫 lua識別符號不能以數字開頭,並且要避免使用以乙個下劃線開頭... 第一章 linux系統簡介與環境搭建 1 linux作業系統的核心程式由芬蘭赫爾辛基大學的一名學生linus torvalds 林納斯 托瓦茲 編寫。2 linux作業系統是一款免費使用,且可以自由傳播的類unix作業系統,它支援多工 多使用者 多執行緒及多cpu,從其誕生到現在,效能逐步得到了穩定... find locate where is witch grep全文搜尋 像hello.c程式這樣只由ascii碼表示且構成的叫文字檔案,其他的都叫二進位制檔案。系統中所有資訊都是由一串位表示的。在unix系統上,從原始檔到目標檔案的轉化是由編譯器驅動程式完成的 x unix gcc o hello ...Lua 學習第一章
Linux複習第一章
第一章半複習