偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

詳細(xì)講解 Lua 腳本語(yǔ)言入門(mén)學(xué)習(xí)

移動(dòng)開(kāi)發(fā) iOS
Lua由標(biāo)準(zhǔn)C編寫(xiě)而成,幾乎在所有操作系統(tǒng)和平臺(tái)上都可以編譯,運(yùn)行。Lua并沒(méi)有提供強(qiáng)大的庫(kù),這是由它的定位決定的。所以Lua不適合作為開(kāi)發(fā)獨(dú)立應(yīng)用程序的語(yǔ)言。

Lua 有一個(gè)同時(shí)進(jìn)行的JIT項(xiàng)目,提供在特定平臺(tái)上的即時(shí)編譯功能。Lua是一個(gè)被設(shè)計(jì)成用于擴(kuò)展C/C++編程的輕量級(jí)腳本語(yǔ)言。不幸的是,網(wǎng)上很少有關(guān)于這個(gè)語(yǔ)言的在線(xiàn)教程。我主要通過(guò)閱讀其源代碼來(lái)了解它是怎樣工作并且通過(guò)一些發(fā)布的程序?qū)W習(xí)它。希望,通過(guò)下面的教程,會(huì)讓學(xué)習(xí)Lua更加簡(jiǎn)單。

本教程涵蓋了Lua5.1。在Lua的每一個(gè)版本中都有一些非常不同之處。下面的示例代碼將不能在老版本的Lua下運(yùn)行。如果你仍然在使用老版本而且不愿意升級(jí),不用擔(dān)心,我已經(jīng)在文章底部提供了4.0和5.0教程的源代碼下載連接。好了,讓我們開(kāi)始吧!

首先,你需要下載Lua。你需要從Lua下載頁(yè)面去下載源代碼。如果你需要編譯好了的二進(jìn)制庫(kù),你能在LuaBinaries 中找到你想要的庫(kù)(lib or dll)。

現(xiàn)在,我們需要安裝Lua。在Linux下,你應(yīng)該先解壓文件,然后以root 用戶(hù)在命令行鍵入"make linux"和"make linux install"。如果你需要幫助,請(qǐng)參考源代碼文件夾中的INSTALL文件?,F(xiàn)在,我下載了windows平臺(tái)下的二進(jìn)制庫(kù)包并把它們解壓到"C:\ Program Files\lua5.1"。

在Linux下不需要我們做任何設(shè)置,但是在windows平臺(tái)下我們必須配置Visual C++,以便讓編譯器和連接器找到Lua文件。

打開(kāi)Visual C++,選擇Tools菜單中的選項(xiàng)菜單。

展開(kāi)"項(xiàng)目",并選擇"VC++ 目錄"。

選擇"包含文件",添加一個(gè)新路徑"C:\Program Files\lua5.1\include"。

在選擇"庫(kù)文家",添加路徑"C:\Program Files\lua5.1\lib\dll"(這里假設(shè)你下載的庫(kù)為dll,你也可以下載靜態(tài)鏈接庫(kù))。

確定。 

現(xiàn)在你可以開(kāi)始編譯你的***個(gè)Lua應(yīng)用了。

使用Lua開(kāi)始你的***個(gè)程序

這個(gè)程序簡(jiǎn)短且直接,下面做一點(diǎn)說(shuō)明:

lua_open()返回一個(gè)指向Lua解釋器的一個(gè)指針。

luaL_openlibs()用于裝載Lua庫(kù),它提供了一些簡(jiǎn)單的函數(shù),如:print。

通過(guò)調(diào)用luaL_dofile()執(zhí)行腳本。它的作用是讀取并解釋腳本。

***,通過(guò)lua_close()函數(shù)關(guān)閉Lua。

保存文件為luatest.cpp。如果你直接使用C而不是C++,將文件名改為luatest.c,然后將extern "C"刪除。

  1. #include <stdio.h>extern "C" {      
  2. #include "lua.h"      
  3. #include "lualib.h"      
  4. #include "lauxlib.h"  
  5. }  
  6. /*  

Lua解釋器指針 

  1. */  
  2. lua_State* L;int main ( int argc, char *argv[] ){     
  3.  /* 初始化Lua */    L = lua_open();      
  4.  /* 載入Lua基本庫(kù) */      
  5.  luaL_openlibs(L);      
  6.  /* 運(yùn)行腳本 */    luaL_dofile(L, "test.lua");      
  7.  /* 清除Lua */      
  8.  lua_close(L);    /* 暫停 */      
  9.  printf( "Press enter to exit…" );      
  10.  getchar();      
  11.  return 0;  

 下面是test.lua的內(nèi)容。

  1. -- simple testprint "Hello, World!" 

編譯

在Linux下,在命令行鍵入:

  1. g++ luatest.cpp -llua -ldl -o luatest 

然后,鍵入下列命令運(yùn)行:

./luatest如果沒(méi)有問(wèn)題,程序?qū)⒃诮K端輸出Hello, World!

在Visual C++你將需要進(jìn)行下列步驟:

創(chuàng)建一個(gè)新的空Win32控制臺(tái)應(yīng)用工程。

將"luatest.cpp"加入你的工程。

選擇項(xiàng)目菜單中的屬性菜單。

在"連接器"的"輸入"欄目的"附加依賴(lài)項(xiàng)"中輸入"lua5.1.lib"。

確定。

此時(shí),按F7構(gòu)建程序。

如果你采用的是dll庫(kù),請(qǐng)確保將其放在應(yīng)用程序的目錄中或者windows系統(tǒng)能夠找到它的地方。如果你采用的是靜態(tài)連接庫(kù),則不需要。 (Groov0V翻譯,轉(zhuǎn)載自CSDN)

  1. include <stdio.h>extern "C"   
  2. {      
  3. #include "lua.h"    
  4. #include "lualib.h"    
  5. #include "lauxlib.h"}  
  6. /* Lua解釋器指針 */  
  7. lua_State* L;  
  8. int main ( int argc, char *argv[] )  
  9. {      
  10.     /* 初始化Lua */   
  11.     L = lua_open();  
  12.  
  13.     /* 載入Lua基本庫(kù) */   
  14.     luaL_openlibs(L);  
  15.  
  16.     /* 運(yùn)行腳本 */      
  17.     luaL_dofile(L, "test.lua");  
  18.  
  19.     /* 清除Lua */      
  20.     lua_close(L);  
  21.  
  22.     /* 暫停 */      
  23.     printf( "Press enter to exit…" );  
  24.  
  25.     getchar();      
  26.     return 0;  

小結(jié):詳細(xì)講解 Lua 腳本語(yǔ)言入門(mén)學(xué)習(xí)的內(nèi)容介紹完了,希望通過(guò)本文的學(xué)習(xí)能對(duì)你有所幫助!

責(zé)任編輯:zhaolei 來(lái)源: 網(wǎng)易博客
相關(guān)推薦

2011-08-25 10:40:21

Lua游戲

2011-08-22 18:08:09

Lua腳本

2011-08-22 18:00:53

Lua語(yǔ)言

2011-08-22 17:41:23

LUA 腳本 語(yǔ)言

2011-06-22 14:07:42

Lua

2011-08-25 11:02:04

2011-08-23 09:44:28

LUA腳本

2011-08-25 09:55:27

2011-08-24 13:32:17

2010-02-26 09:33:51

Python腳本

2011-08-24 17:05:01

Lua

2011-08-25 14:26:40

LUA數(shù)據(jù)文件

2011-08-25 13:22:40

CEGUILua腳本

2009-06-10 08:41:15

Linux腳本語(yǔ)言

2010-02-24 14:04:32

Python腳本語(yǔ)言

2011-08-25 10:35:14

Lua語(yǔ)言函數(shù)

2012-07-16 11:23:18

LinuxWindows腳本語(yǔ)言

2011-08-16 10:03:45

Groovy編程語(yǔ)言Web

2010-02-26 13:03:31

Python腳本語(yǔ)言

2011-09-07 09:51:27

Javascript
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)