이상한 습관이 있다.. 하고 있는 일에 슬럼프가 오면
이것저것  건드려본다 그래서
예전에 루아 소스를 다운 받아 빌드도 해봤다
스크립트는 안짜봤지만..
그때 아마도 "게임 프로그래머는 루아를 알아야한다."라는
말을 들어서 본것 같다

루아 소스를 다운 받지 않고 바이너리파일즉 이미 빌드된
설치파일을 받아서 설치후 진행할 생각이다.
소스파일을 봐버리면 소스 분석할생각에 루아 스크립트에
집중하기 힘들어진다.

이 카테고리에 포스팅하는 글들은 "Programming in Lua"라는 책을 보고
대부분 요약해서 올리려고 합니다


--------- 내용시작---------

루아 바이너리 파일로 설치하게 되면 SciTE라는 스크립트용 툴이 설치되는데
 툴을 이용해 빌드, 디버깅  되는것 같다

print("Hello World")
일단 시작은 헬로 월드~
습관적으로 printf라고 치는것 말곤 순조롭게 진행
잘출력된다


1. 코드뭉치
C언어와는 다르게 ;(세미콜론) 이용하여 줄바꿈을 인식하지 않는다
a = 1
b = a*2
 된다

a = 1;
b = a*2;
이것 역시 잘된다

a = 1; b = a*2
잘된다
a = 1 b= a*2
이것역시 잘된다(너무 뵈기 싫지만)

2. 어휘 규정
C언어를 할잘 알면 틀릴일이 없지만 일단 적어 본다
루아의 식별자는 숫자로 시작하지 않는 영문자, 숫자, 밑줄의 조합이라면 모두 사용할  있다.
그리고 _VERSION 같이 모두 대문자로된 이름은 피하는게 좋다
이유는 루아에서 특별한 이유로 사용한다고 한다.

예약어 리스트
 
and
break
do
else
elseif
end
false
for
function
if
in
local
nil
not
or
repeat
return
then
true
until
while
예약어 역시 사용할수 없다.

루아 한줄 주석 --
C 한줄 주석 //

루아 블록 주석 시작 --[[
루아 블록 주석  ]]

C블록 주석 시작 /*
C블록 주석 끝 */


3. 전역변수
딱히 알아둬야 할게 없는거 같다
굳이 적는다면
b = nil;
이게 변수 삭제? 정도이다(b 값을 nil 준다는게  맞는  같다)


4. 독립형 인터프리터
lua.exe 매개변수
매개 변수 없이 시작한다면 한줄씩 실행하는 대화모드로 시작된다

lua [options] [script [args]]

-e 옵션 : 명령행에 직접 코드를 넣을수 있도록 한다.
)  lua -e "printf(math.sin(12))"     --> -0.53657291800043      (쉘이 소괄호를 번역하는것을 막기위해  따옴표로 감싸야함)

-l 옵션 : 라이브러리를 읽어 들인다.
-i 옵션 : 다른 인수를 모두 실행한후 대화모드가 된다
) lua -i -l a -e "x = 10" --> a라는 라이브러리를 읽고 x=0값을 대입한후 대화모드 시작~

lua -e "sin=math.sin" script a b
위와 같은 식으로 사용시
arg[-3] = "lua"
arg[-2] = "-e"
arg[-1] = "sin=math.sin"
arg[0] = "script"
arg[1] = "a"
arg[2] = "b"
 같이 값이 저장된다
신고

'Programming > Lua' 카테고리의 다른 글

[Lua] 1부(언어) 5장. 함수 개요  (3) 2011.07.25
[Lua] 1부(언어) 4장. 문장  (0) 2011.07.21
[Lua] 1부(언어) 3장. 수식  (0) 2011.07.17
[Lua] 1부(언어) 2장. 루아 타입과 값  (0) 2011.07.16
[Lua] 1부(언어) 1장. 시작하기  (0) 2011.07.16
by Ergate 2011.07.16 18:04

티스토리 툴바