본문 바로가기

Coding Note

[Lua] 함수


--함수
--function FUNCTION_NAME ( ARGUMENTS... )
-- content
--end
-- 로 구성

function test_func (arg1, arg2)
 return arg1 + arg2
end

print(test_func(10,20))

--여러개의 반환값을 가질 수 있다.
function multi_ret (num1, num2)
 if num1 > num2 then
  return num1, num2
 else
  return num2, num1
 end
end

mx,mn = multi_ret(4,10)
print("max, min :: "..mx..":"..mn )

--가변인자도 쉽게
function variable_len_arg(...)
 for i=1, arg.n do --arg.n이 가변인자 길이, arg[index]로 접근
  print(arg[i])
 end
end

variable_len_arg("hi","lua"," hh")

--recursive 허용
function rec(a,b)
 if a>b then
  return rec(a-1, b)
 elseif a<b then
  return rec(a, b-1)
 else
  return a,b
 end
end

x,y = 100, 200
x,y = rec(x,y)
print(x..' '..y)

--lua 함수의 인자는 값복사 방식

'Coding Note' 카테고리의 다른 글

[Data Structure] Red Black Tree  (0) 2012.05.27
[Lua] table  (0) 2012.03.19
[Lua] first  (1) 2012.03.18
[CUDA] kernel 호출방법  (0) 2012.03.14
[CUDA] hello cuda  (0) 2012.03.10