📣 더 깊은 내용이 담긴 '프날 오토핫키 강좌 v2'의 서적판이 공개되었습니다.
가장 최신의 오토핫키를 담은 '프날 오토핫키 강좌 v2'를 책으로 만나보세요!
v2 페이지에 공개된 분량보다 더욱 깊은 내용을 처음이라도 괜찮아, 오토핫키 프로그래밍을 통해 배울 수 있습니다.
전국 온/오프라인 서점에서 만나요!
책 더 알아보기 및 구매하기
우선, 배웠던 연산자들을 복습해보겠습니다.
1. 대입 연산자
- 그냥 대입은 :=
- 누적 대입은 .=
2. 산술 연산자
- 사칙연산 +, -, *, /
3. 비교 연산자
- 부등호 <, >, <=, >=
- 등호 =
4. 산술-대입 연산자
- 사칙연산 후 대입 +=, -=, *=, /=
5. 논리 연산자
- 그리고 &&
- 또는 ||
- 아니다 !
6. 증감 연산자
- 변수의 값 1 증가 ++
- 변수의 값 1 감소 --
사실 이외에도 많은 연산자들이 있지만, 주로 쓰이는 연산자들만 강좌에 작성했습니다.
변수를 이렇게도 쓸 수 있습니다.
변수를 사용할 땐 %기호로 변수를 감싸준다는 내용을 작성했었습니다. 아래와 같이 말입니다.
var := 100
MsgBox, %var%
그런데, 변수가 꽤 많아지면 복잡해집니다. 변수가 10개인 경우를 생각해볼까요?
MsgBox, %a% %b% %c% %d% %e% %f% %g% %h% %i% %j%
스크립트가 너무 길어집니다. 이럴 때를 위해서, 변수는 아래처럼 %를 한 번만 쓰고도 쓸 수 있습니다.
MsgBox, % a b c d e f g h i j
이 때, 변수와 변수 사이는 띄어쓰기로 구분하며 %와 첫 변수 사이는 무조건 띄워주어야 합니다.
즉, 아래 두 경우처럼 쓰지 않도록 주의해야합니다.
MsgBox, % abcdefghij
→ 변수 a, 변수 b... 가 아니라 변수 abcefghij를 출력한다.
MsgBox, %a b c d e f g h i j
→ 오류가 나며 실행이 되지 않는다. (오류 메시지(번역): 닫는 '%'가 없는 변수명을 포함하고 있는 구문입니다.)
이렇게 변수를 사용해 줄 경우, 문자열은 따옴표를 이용해주어야 합니다.
즉, 아래 두 스크립트는 완전히 동일하게 표현됩니다.
a := 1
b := 1
c := "귀요미"
MsgBox, % a " + " b " = " c
a := 1
b := 1
c := "귀요미"
MsgBox, %a% + %b% = %c%
단, 이렇게 쓸 경우엔 %기호를 해당 매개변수의 맨 앞에 오도록 해주어야합니다.
%로 감싸는 방식과 위의 방법은 같이 쓸 수 없다는 것입니다.
MsgBox, %a% + %b% = % c "입니다."
a와 b 변수는 %로 감싸주는 방식,
c는 %기호 + 공백으로 열어주고 변수를 사용하는 방식이며
위 예제처럼 이 두 방식이 동시에 혼용되면 안됩니다.
왜 이렇게 쓰나 싶으시겠지만, 가끔 필요할 때가 옵니다. 알아두면 좋은 테크닉입니다.
마지막으로 연산자를 정리한 표를 보여드리고 이번 강을 마치도록 하겠습니다.
배우지 않은 연산자 또한 있는데, 표 오른쪽 예제란을 보시면 아실겁니다.
연산자 (혹은 수식) |
설명 |
종류 |
예제 |
+ |
더한다 |
산술 연산자 |
2 + 3 ;결과는 5 |
- |
뺀다 |
산술 연산자 |
2 - 3 ;결과는 -1 |
* |
곱한다 |
산술 연산자 |
2 * 3 ;결과는 6 |
/ |
나눈다 |
산술 연산자 |
2 / 3 ;결과는 0.666666 |
** |
거듭제곱 |
산술 연산자 |
5 ** 3 ;결과는 125 |
// |
몫을 구한다 |
산술 연산자 |
5 // 3 ;결과는 1 |
:= |
대입한다 (집어 넣는다) |
대입 연산자 |
a := 1 |
.= |
누적 대입한다 (쌓는다) |
대입 연산자 |
a .= 1 |
a > b |
a가 b보다 크다 |
비교 연산자 |
a > b |
a < b |
a가 b보다 작다 |
비교 연산자 |
a < b |
a >= b |
a가 b보다 크거나 같다 |
비교 연산자 |
a >= b |
a <= b |
a가 b보다 작거나 같다 |
비교 연산자 |
a <= b |
= |
같다 |
비교 연산자 |
a = b |
<> |
다르다 |
비교 연산자 |
a <> b |
+= |
더해서 대입 |
산술/대입 연산자 |
a += 1 |
-= |
빼서 대입 |
산술/대입 연산자 |
a -= 1 |
*= |
곱해서 대입 |
산술/대입 연산자 |
a *= 2 |
/= |
나눠서 대입 |
산술/대입 연산자 |
a /= 2 |
&& |
그리고 |
논리 연산자 |
a = b && b = c |
|| |
또는 |
논리 연산자 |
a = b || b = c |
! |
부정 |
논리 연산자 |
!= (같지 않다) |
++ |
값을 1 증가시킨다 |
증감 연산자 |
a++ |
-- |
값을 1 가감시킨다 |
증감 연산자 |
a-- |
Mod(나눠지는수,나누는수) |
나머지 구하기 |
수식 |
Mod(3,2) ;= 1 |
Ceil(수) |
올림 |
수식 |
Ceil(2.666) ;=3 |
Floor(수) |
버림 |
수식 |
Floor(2.666) ;= 2 |
Round(수,자릿수) |
반올림 |
수식 |
Round(2.666,2) ;= 2.67 |
abs(수) |
절댓값 |
수식 |
abs(-1) ;결과는 1 |
Sin(수),Cos(수),Tan(수) |
사인/코사인/탄젠트 |
수식 |
Sin(30) ;결과는 0.5 |
< 11. 연산자의 종류 (하) | 12. 변수와 연산자의 활용 | 13. 프로그래밍 문제 (2) >
⚠ 이 강좌는 오토핫키 v1을 다룹니다
지금 보시는 강좌는 구버전 오토핫키(v1.1)를 다루고 있습니다. 따라서 본 강좌의 내용은 현재 최신 오토핫키 버전 (v2.0)과 호환되지 않습니다. 구버전의 정보가 필요한 것이 아니라면, 가능한 한 새로운 사이트에 작성한 v2 강좌(https://ahkv2.pnal.dev)를 봐주시길 바랍니다.