전체 글(99)
-
far ,near pointer란?
현재는 쓰지않는 포인터 , far, near 포인터는 예전 Dos 시절 사용하던 포인터 들입니다. 그당시에는 메모리를 접급하기 위해서 offset(16bit) 과 segment(16bit)라는 것을 사용했다. 예로 F000 : 0001 (세그먼트 주소 : 오프셋 주소) = F0000001 (실제 주소) 이렇게 두 값을 더해서 메모리 주소를 표현 했습니다. near 포인터는 오프셋 포인터만을 저장할 수 있어 16 bit의 크기를 가지고 있습니다. far 포인터는 세그먼트 와 오프셋을 모두 저장이 가능하고 32bit의 크기를 가지고 있습니다.
2024.01.30 -
10.Lua 의 반복자
C++의 Iterator는 소위 컬렉션이나 컨테이너의 요소를 탐색할 수 있게 해주는 구문입니다. Lua에서 이러한 컬렉션은 종종 배열과 같은 다양한 데이터 구조를 만드는 데 사용되는 테이블을 참조합니다. array = {"Lua", "Tutorial"} for key,value in ipairs(array) do print(key, value) end 1 Lua 2 Tutorial Lua에서 제공하는 기본 ipairs 반복자 함수를 사용합니다. Lua에서는 함수를 사용하여 반복자를 나타냅니다. 이러한 반복자 함수의 상태 유지 관리를 기반으로 두 가지 주요 유형이 있습니다. 상태 비저장 반복자 상태 저장 반복자 상태 비저장 반복자 이름 자체로 이러한 유형의 반복자 함수가 어떤 상태도 유지하지 않는다는 것을..
2024.01.30 -
9.Lua 의 배열
1차원 배열 1차원 배열은 간단한 테이블 구조를 사용하여 표현할 수 있으며 간단한 for 루프를 사용하여 초기화하고 읽을 수 있습니다. array = {"Lua", "Tutorial"} for i = 0, 2 do print(array[i]) end nil Lua Tutorial 실행해보면 0번지는 nul을 반환합니다 . 일반적으로 Lua에서는 인덱스는 일반적으로 1에서 시작합니다. 그러나 인덱스 0과 0 미만에서도 객체를 생성할 수 있습니다. 음수 인덱스를 사용하는 배열은 for 루프 를 사용하여 배열을 초기화합니다. array = {} for i= -2, 2 do array[i] = i *2 end for i = -2,2 do print(array[i]) end -4 -2 0 2 4 다차원 배열 다차..
2024.01.29 -
8.Lua의 문자열
문자열은 일련의 문자이자 폼 피드와 같은 제어 문자입니다. 문자열은 다음을 포함하는 세 가지 형식으로 초기화될 수 있습니다. 문자열 조작 1 string.upper(인수) 인수의 대문자 표현을 반환합니다. 2 string.lower(인수) 인수의 소문자 표현을 반환합니다. 3 string.gsub(mainString,findString,replaceString) findString을 replacementString으로 바꾸어 문자열을 반환합니다. 4 string.find(mainString,findString, 선택적인StartIndex, 선택적인EndIndex) 기본 문자열에 있는 findString의 시작 인덱스와 끝 인덱스를 반환하고, 찾을 수 없으면 nil을 반환합니다. 5 문자열.역방향(인수) ..
2024.01.29 -
7. Lua의 함수
함수의 구조 [옵션] function [이름] (인수 1 인수 2 .....) 함수 정의 return [ 쉼표로 구분된 반환 값 ] end 기능 할당 및 전달 Lua에서는 함수를 변수에 할당할 수 있고 다른 함수의 매개변수로 전달할 수도 있습니다. 다음은 Lua에서 함수를 매개변수로 할당하고 전달하는 간단한 예입니다. 가변 인수를 갖는 함수 Lua에서는 '...'를 매개변수로 사용하여 가변 인수로 함수를 만드는 것이 가능합니다. 함수가 평균을 반환하고 가변 인수를 사용할 수 있는 예를 보면 이에 대해 이해할 수 있습니다.
2024.01.29 -
6.Lua 의 조건문
Lua 에서는 부울의 true 및 nil이 아닌 값 의 조합을 true 로 가정 하고, 부울 false 또는 nil 인 경우 false 값 으로 가정합니다 . Lua에서는 0이 참으로 간주된다는 점에 유의하세요 . if-else 구문에서 if 조건문이 참인 경우는 then이하의 명령을 실행하고 else나 혹은 end를 만나면 if문을 끝마친다. 그리고 조건문이 거짓이면 else문 이하 명령어가 실행된다. 예시 i = 0 -- 변수 초기화 if i == 0 then -- i값이 0이면 다음 실행 print("It's Zero.") end i = 1 --변수 초기화 if i == 0 then -- i가 0이면 then이하 실행 0이아닌 거짓이면 else이하 실행 print("It's Zero.") else ..
2024.01.29