์ด ๋ฌธ์์ ์๋ณธ์ ์ธ๋ถ ์ํค์์ ๊ฐ์ ธ์์ต๋๋ค.
1. ์ฌ์ ์ ์ธ ๋ป[ํธ์ง]
'๊ฐ์ด ์์'์ ๋ํ๋ด๋ ์๋จ์ด. ๊ฐ์ด ์๋ค๋ ๊ฒ์ ๊ทธ ๊ฐ์ด 0์กฐ์ฐจ ์๋๋ผ๋ ๋ป์ด๋ค. ๋
์ผ์ด์์ ์ซ์ 0์ด๋ ๋ป์ผ๋ก ์ฐ์ธ๋ค.
์ฝ๊ฒ ๋น์ ํ์๋ฉด, ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด 0์ ํ์ฅ์ค ํด์ง๊ฑธ์ด์ ํด์ง ์์ด ํด์ง์ฌ๋ง ๊ฑธ๋ ค ์๋ ์ํ์ง๋ง, null์ ํด์ง์ฌ๋ ๊ฑธ๋ ค ์์ง ์์ ์ํ๋ค.
๋ ์ด์์ผ๋ก๋ ๋, ์๋ฏธ์์ผ๋ก๋ ๋์ด๋ผ๊ณ ๋ฐ์ํ๋ค.
์ฝ๊ฒ ๋น์ ํ์๋ฉด, ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด 0์ ํ์ฅ์ค ํด์ง๊ฑธ์ด์ ํด์ง ์์ด ํด์ง์ฌ๋ง ๊ฑธ๋ ค ์๋ ์ํ์ง๋ง, null์ ํด์ง์ฌ๋ ๊ฑธ๋ ค ์์ง ์์ ์ํ๋ค.
๋ ์ด์์ผ๋ก๋ ๋, ์๋ฏธ์์ผ๋ก๋ ๋์ด๋ผ๊ณ ๋ฐ์ํ๋ค.
1.1. ์์คํค ์ฝ๋[ํธ์ง]
์์คํค ์ฝ๋ 0๋ฒ(0x00)์ ํด๋นํ๋ ์ ์ด ๋ฌธ์์ด๋ค. ํ๋ฉด์์๋ ํ์๋์ง ์๊ณ ์ค์ง ๋ฐ์ดํธ ์์ผ๋ก๋ง ์กด์ฌํ๋ค.[1]
ํ ์คํธ๋ฅผ ์ ๋ ฅํ๋ ํ๋ ๊ฐ์๋ฐ์ ๋ฐ์ดํธ ์๊ฐ ์ ํด์ ธ ์๋ ๋ฐ, ๊ทธ ๋ฐ์ดํธ ์๋ฅผ ์ฑ์ฐ์ง ๋ชปํ๊ณ ๋๋ด๋ฒ๋ฆฌ๋ฉด ์ค๋ฅ๊ฐ ๋ฐ์ํ ์๋ ์๋ค. ์ด๋ฐ ๊ฒฝ์ฐ์ ๋ฐ์ดํธ ์๋ฅผ ์์๋ก ์ฑ์ฐ๊ธฐ ์ํด ๋๋จธ์ง ์๋ฆฌ์ Null ๋ฌธ์๋ฅผ ๋ฃ๋๋ค. ์๋ฅผ ๋ค๋ฉด MP3 ํ์ผ์ ์ฌ์ฉ๋๋ ID3 ํ๊ทธ ๊ฐ์ ๊ฒ๋ค์ด ์๋ค. ์ผ๋ถ ํ๋ก๊ทธ๋จ์ Null ๋ฌธ์๊ฐ ์๋ ๊ณต๋ฐฑ ๋ฌธ์(0x20)๋ฅผ ๋์ ์ ๋ ฅํ๋ ๊ฒฝ์ฐ๋ ์๋ค. FAT ํ์ผ ์์คํ ์์๋ ๊ณต๋ฐฑ์ผ๋ก ์ฑ์ด๋ค. ์๋ฅผ ๋ค๋ฉด ABCDEFG.TXT๋ผ๋ ํ์ผ์
ํ ์คํธ๋ฅผ ์ ๋ ฅํ๋ ํ๋ ๊ฐ์๋ฐ์ ๋ฐ์ดํธ ์๊ฐ ์ ํด์ ธ ์๋ ๋ฐ, ๊ทธ ๋ฐ์ดํธ ์๋ฅผ ์ฑ์ฐ์ง ๋ชปํ๊ณ ๋๋ด๋ฒ๋ฆฌ๋ฉด ์ค๋ฅ๊ฐ ๋ฐ์ํ ์๋ ์๋ค. ์ด๋ฐ ๊ฒฝ์ฐ์ ๋ฐ์ดํธ ์๋ฅผ ์์๋ก ์ฑ์ฐ๊ธฐ ์ํด ๋๋จธ์ง ์๋ฆฌ์ Null ๋ฌธ์๋ฅผ ๋ฃ๋๋ค. ์๋ฅผ ๋ค๋ฉด MP3 ํ์ผ์ ์ฌ์ฉ๋๋ ID3 ํ๊ทธ ๊ฐ์ ๊ฒ๋ค์ด ์๋ค. ์ผ๋ถ ํ๋ก๊ทธ๋จ์ Null ๋ฌธ์๊ฐ ์๋ ๊ณต๋ฐฑ ๋ฌธ์(0x20)๋ฅผ ๋์ ์ ๋ ฅํ๋ ๊ฒฝ์ฐ๋ ์๋ค. FAT ํ์ผ ์์คํ ์์๋ ๊ณต๋ฐฑ์ผ๋ก ์ฑ์ด๋ค. ์๋ฅผ ๋ค๋ฉด ABCDEFG.TXT๋ผ๋ ํ์ผ์
ABCDEFG .TXT์ ๊ฐ์ด ๊ธฐ๋ก๋๋ค.2. ํ๋ก๊ทธ๋๋ฐ ์ฉ์ด[ํธ์ง]
ASCII ์ฝ๋๋ 0, ์ ๋์ฝ๋๋ U+0000์ด ๋ ๋ฌธ์๋ค.[1]
C ํ๋ก๊ทธ๋๋ฐ์์๋ '์กด์ฌํ์ง ์๋ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์'๋ฅผ NULL๋ก ๋ํ๋ธ๋ค. ํน์ ํฌ์ธํฐ ๋ณ์๋ฅผ ์ด๊ธฐํํ ๋๋ ์ค์ ๋ก ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ ๋นํ๊ธฐ ์ ์ NULL๋ก ์ด๊ธฐํํ๋ ๋ฒ๋ฆ์ ๋ค์ด์. ์ด๋ฐ ์์ผ๋ก
ํฌ์ธํฐ ๋ณ์์ ๊ด๋ จ๋ ์ฐ์ฐ์์ ๊ฐ์ด 0์ธ ์ ์ ์์์์ด ๋์ค๋ฉด ์ด๋ฅผ ๊ณง NULL๋ก ํด์ํ๋ค(์ฌ์ค NULL์ 0, ํน์ (void*)0๊ณผ ๊ฐ๋๋ก ์ ์๋์ด์ผ ํ๋ค). ๋ฐ๋ผ์ ์์ ์ฝ๋๋ ์๋์ ๊ฐ์ด ์จ๋ ๋๋ค.
ํํ ASCII๋ ์ ๋์ฝ๋ ์์์ NULL์ ๋ฌธ์๊ฐ์ด 0์ด๋ผ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๋ก ์ฌ์ฉํ ๋์ NULL๋ 0์ผ ๊ฑฐ๋ผ๊ณ ์๊ฐํ๊ณ ์ฝ๋ฉ์ ํ๋ ๊ฒฝ์ฐ๊ฐ ์๋๋ฐ ์ํํ๋ค. C ํ์ค์ ์ฝ๋์์ ์ง์ ๋ํ๋๋ 0์ NULL์ด๋ ์๋ฏธ๋ฅผ ๋ถ์ฌํ๊ณ ์์ง๋ง, ๋ด๋ถ์ ์ผ๋ก ์ค์ ๋ก NULL ๊ฐ์ด ๋ญ๊ฐ ๋๋์ง๋ ๊ท์ ํ์ง ๋ชปํ๋ค. ์ด๋ ํ๋ก๊ทธ๋จ์ด ์ปดํ์ผ๋๋ ์์คํ ์ด ๊ฒฐ์ ํ๋ฉฐ, ๋ฐ๋ผ์ NULL != 0x0์ธ ๊ฒฝ์ฐ๊ฐ ์๋ค. ์ด๋ฐ ์์์๋ ์์ char *ptr = 0;์ด๋ ์ฝ๋๊ฐ ์ค์ ๋ก ptr์ ์ฃผ์๊ฐ 0x0์ ๋์ ํ์ง ์๋๋ค. ์ ๋น์ด ๊ทธ ์ฝ๋ ์์ฒด๊ฐ '์์คํ ์ ์ ์๋ NULL ๊ฐ์ ๋์ ํ๋ค'๋ ์๋ฏธ์ง 0x0์ ๋์ ํ๋ค๋ ์๋ฏธ๊ฐ ์๋๋๊น.
ํ์ง๋ง ์๋ ๋ง์ ์์คํ ์์ NULL์ 0์ผ๋ก ์ ์ํ๊ณ ์์๊ณ , ์ค๋ ์ ๋ถํฐ ๋ด๋ ค์จ ์ฝ๋๋ค์ ๋ํด ํธํ์ฑ์ ๊ฐ์ง๊ธฐ ์ํด ๊ฐ๋ฐํ๊ฒฝ์ด ๋ง์ถฐ์ง๋ค ๋ณด๋ ์ด์ ๋ 0์ด ์๋ ํ๊ฒฝ์ ์๊ฐ๋ ํ๊ธฐ ํ๋ค์ด์ก๋ค. null์ด ์ ์๋์ง ์์ ์ธ์ด(Solidity ๋ฑ)์กฐ์ฐจ๋ null ๊ฐ์ด ํ์ํ ์ํฉ์ 0์ผ๋ก ์ฌ์ฉํ ์ ๋.
๋ค๋ง ์ฝ๋์ ๊ตฌ์ฒด์ฑ์ ๋์ด๊ธฐ ์ํด์ 0๊ณผ Null์ ๋ค๋ฅด๊ฒ ๋ง๋๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ ์๋ค. Java, JavaScript, PHP์์๋ Null์ Null์ด์ง 0์ผ๋ก ๋์ฒดํ ์ ์๋ค. ๋จ, PHP์ ๊ฒฝ์ฐ ์ฃผ์ํ ์ฌํญ์ด ์๋ค.
์์ ๊ฐ์ด ๋น๊ตํ๋ฉด (1)[2]์ ๋์ถฉ ํ์น๊ณ ๋์ด๊ฐ๋ ๋์จํ ๋น๊ต์ด๊ธฐ ๋๋ฌธ์ true๊ฐ ์ถ๋ ฅ๋๊ณ , (2)[3]๋ ๋ณ์์ ์๋ฃํ๊น์ง ๋ค ๋น๊ตํ๋ฏ๋ก false๊ฐ ์ถ๋ ฅ๋๋ค. PHP ์ด์ธ์๋ ์ด์ ์ ์ฌํ ํํ๋ก ๋น๊ต ์ฐ์ฐ์๋ฅผ ๋ถ๋ฆฌํ ์ธ์ด์์๋ ์ด์ ์ ์ฌํ ์์ผ๋ก ์ธ์ํ๋ค.
๋จ์ํ์ธ null ๋์ ๋ณต์ํ์ธ nil์ ์ฐ๋ ๊ฒฝ์ฐ๋ ์๋ค. ๋ํ์ ์ธ ๊ฒ์ด LISP, ์ด ์ธ์ด๋ ๋ฐ์ดํฐ ๋จ์๊ฐ ๋ฆฌ์คํธ์ธ์ง๋ผ false์ ์๋ฏธ๋ ๊ฒธํ๋ค. Go ์ธ์ด ์ญ์ nil์ ์ฌ์ฉํ๋ค.
Objective-C์์๋ NULL, nil, NIL ๋ชจ๋ ๊ธฐ์ ์ ์ผ๋ก ๋๊ฐ์ด (void *0)์ด๊ธด ํ์ง๋ง ํผ์ฉํด์๋ ์๋๋ค. NULL์ ๊ณ ์ ์ ์ธ C ๋ ํฌ์ธํฐ, NIL์ ํด๋์ค ๋ ํฌ์ธํฐ, nil์ ์ธ์คํด์ค ๋ ํฌ์ธํฐ๋ก ์๋ก ์ญํ ์ด ๋๋์ด์ ธ ์๋ค. ํผ์ฉํ๋ฉด ์ฌ๋ฌ๊ฐ์ง ์๋ฏธ๋ก ์ง์ฅ์ ๋ง๋ณด๊ฒ ๋๋ค.(โฆ)
๋ ๋ ํผ๋ฐ์ค๋ฅผ ์ฒ์ ๋ง๋ ํ ๋ ํธ์ด[4]๊ฐ '10์ต ๋ถ์ง๋ฆฌ ์ค์'(billion dollar mistake)์๋ค๊ณ ํ๊ณ ํ ์ ์๋ค. ๋ ํฌ์ธํฐ๋ฅผ ์ฒดํฌํ์ง ์๊ณ ์ฌ์ฉํด์ ๋ฐ์ํ๋ ๋ฒ๊ทธ๊ฐ ์์ฒญ๋๊ฒ ๋ง๊ธฐ ๋๋ฌธ. ๋๋ฌธ์ ์ต์ ์ธ์ด๋ค์ null reference๋ฅผ ๋ฐฐ์ ํ๋ ค๋ ์์ง์์ ๋ณด์ธ๋ค.
๋ด ์์น ์ขํ๋ฅผ ๋ชจ๋ฅธ๋ค๋ฉด (์๋, ๊ฒฝ๋)๋ (Null, Null)์ด ๋๋๋ฐ, ์ด๋ฅผ (0, 0)์ผ๋ก ํด์ํ๋ฉด ์ขํ๋ ์๋ 0๋, ๊ฒฝ๋ 0๋์ ์ํ๋ฆฌ์นด ์ํด์์ผ๋ก ํ์๋๋ค. #
ํํฉLE์์๋ ์ด๊ทธ๋ก์ฑ ๊ธ์ ์ด Null ๋๊ธ์ ๋ฌ์์ฃผ๋ ๋ถ๋ฌธ์จ์ด ์๋ค.
C ํ๋ก๊ทธ๋๋ฐ์์๋ '์กด์ฌํ์ง ์๋ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์'๋ฅผ NULL๋ก ๋ํ๋ธ๋ค. ํน์ ํฌ์ธํฐ ๋ณ์๋ฅผ ์ด๊ธฐํํ ๋๋ ์ค์ ๋ก ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ ๋นํ๊ธฐ ์ ์ NULL๋ก ์ด๊ธฐํํ๋ ๋ฒ๋ฆ์ ๋ค์ด์. ์ด๋ฐ ์์ผ๋ก
char *ptr = NULL;
ptr = (char*)malloc(...);
ํฌ์ธํฐ ๋ณ์์ ๊ด๋ จ๋ ์ฐ์ฐ์์ ๊ฐ์ด 0์ธ ์ ์ ์์์์ด ๋์ค๋ฉด ์ด๋ฅผ ๊ณง NULL๋ก ํด์ํ๋ค(์ฌ์ค NULL์ 0, ํน์ (void*)0๊ณผ ๊ฐ๋๋ก ์ ์๋์ด์ผ ํ๋ค). ๋ฐ๋ผ์ ์์ ์ฝ๋๋ ์๋์ ๊ฐ์ด ์จ๋ ๋๋ค.
char *ptr = 0;
ptr = (char*)malloc(...);
ํํ ASCII๋ ์ ๋์ฝ๋ ์์์ NULL์ ๋ฌธ์๊ฐ์ด 0์ด๋ผ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๋ก ์ฌ์ฉํ ๋์ NULL๋ 0์ผ ๊ฑฐ๋ผ๊ณ ์๊ฐํ๊ณ ์ฝ๋ฉ์ ํ๋ ๊ฒฝ์ฐ๊ฐ ์๋๋ฐ ์ํํ๋ค. C ํ์ค์ ์ฝ๋์์ ์ง์ ๋ํ๋๋ 0์ NULL์ด๋ ์๋ฏธ๋ฅผ ๋ถ์ฌํ๊ณ ์์ง๋ง, ๋ด๋ถ์ ์ผ๋ก ์ค์ ๋ก NULL ๊ฐ์ด ๋ญ๊ฐ ๋๋์ง๋ ๊ท์ ํ์ง ๋ชปํ๋ค. ์ด๋ ํ๋ก๊ทธ๋จ์ด ์ปดํ์ผ๋๋ ์์คํ ์ด ๊ฒฐ์ ํ๋ฉฐ, ๋ฐ๋ผ์ NULL != 0x0์ธ ๊ฒฝ์ฐ๊ฐ ์๋ค. ์ด๋ฐ ์์์๋ ์์ char *ptr = 0;์ด๋ ์ฝ๋๊ฐ ์ค์ ๋ก ptr์ ์ฃผ์๊ฐ 0x0์ ๋์ ํ์ง ์๋๋ค. ์ ๋น์ด ๊ทธ ์ฝ๋ ์์ฒด๊ฐ '์์คํ ์ ์ ์๋ NULL ๊ฐ์ ๋์ ํ๋ค'๋ ์๋ฏธ์ง 0x0์ ๋์ ํ๋ค๋ ์๋ฏธ๊ฐ ์๋๋๊น.
ํ์ง๋ง ์๋ ๋ง์ ์์คํ ์์ NULL์ 0์ผ๋ก ์ ์ํ๊ณ ์์๊ณ , ์ค๋ ์ ๋ถํฐ ๋ด๋ ค์จ ์ฝ๋๋ค์ ๋ํด ํธํ์ฑ์ ๊ฐ์ง๊ธฐ ์ํด ๊ฐ๋ฐํ๊ฒฝ์ด ๋ง์ถฐ์ง๋ค ๋ณด๋ ์ด์ ๋ 0์ด ์๋ ํ๊ฒฝ์ ์๊ฐ๋ ํ๊ธฐ ํ๋ค์ด์ก๋ค. null์ด ์ ์๋์ง ์์ ์ธ์ด(Solidity ๋ฑ)์กฐ์ฐจ๋ null ๊ฐ์ด ํ์ํ ์ํฉ์ 0์ผ๋ก ์ฌ์ฉํ ์ ๋.
๋ค๋ง ์ฝ๋์ ๊ตฌ์ฒด์ฑ์ ๋์ด๊ธฐ ์ํด์ 0๊ณผ Null์ ๋ค๋ฅด๊ฒ ๋ง๋๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ ์๋ค. Java, JavaScript, PHP์์๋ Null์ Null์ด์ง 0์ผ๋ก ๋์ฒดํ ์ ์๋ค. ๋จ, PHP์ ๊ฒฝ์ฐ ์ฃผ์ํ ์ฌํญ์ด ์๋ค.
$test = NULL;
print ( $test == 0 ) ? "true" : "false" ; // (1)
print ( $test === 0 ) ? "true" : "false" ; // (2)
์์ ๊ฐ์ด ๋น๊ตํ๋ฉด (1)[2]์ ๋์ถฉ ํ์น๊ณ ๋์ด๊ฐ๋ ๋์จํ ๋น๊ต์ด๊ธฐ ๋๋ฌธ์ true๊ฐ ์ถ๋ ฅ๋๊ณ , (2)[3]๋ ๋ณ์์ ์๋ฃํ๊น์ง ๋ค ๋น๊ตํ๋ฏ๋ก false๊ฐ ์ถ๋ ฅ๋๋ค. PHP ์ด์ธ์๋ ์ด์ ์ ์ฌํ ํํ๋ก ๋น๊ต ์ฐ์ฐ์๋ฅผ ๋ถ๋ฆฌํ ์ธ์ด์์๋ ์ด์ ์ ์ฌํ ์์ผ๋ก ์ธ์ํ๋ค.
๋จ์ํ์ธ null ๋์ ๋ณต์ํ์ธ nil์ ์ฐ๋ ๊ฒฝ์ฐ๋ ์๋ค. ๋ํ์ ์ธ ๊ฒ์ด LISP, ์ด ์ธ์ด๋ ๋ฐ์ดํฐ ๋จ์๊ฐ ๋ฆฌ์คํธ์ธ์ง๋ผ false์ ์๋ฏธ๋ ๊ฒธํ๋ค. Go ์ธ์ด ์ญ์ nil์ ์ฌ์ฉํ๋ค.
Objective-C์์๋ NULL, nil, NIL ๋ชจ๋ ๊ธฐ์ ์ ์ผ๋ก ๋๊ฐ์ด (void *0)์ด๊ธด ํ์ง๋ง ํผ์ฉํด์๋ ์๋๋ค. NULL์ ๊ณ ์ ์ ์ธ C ๋ ํฌ์ธํฐ, NIL์ ํด๋์ค ๋ ํฌ์ธํฐ, nil์ ์ธ์คํด์ค ๋ ํฌ์ธํฐ๋ก ์๋ก ์ญํ ์ด ๋๋์ด์ ธ ์๋ค. ํผ์ฉํ๋ฉด ์ฌ๋ฌ๊ฐ์ง ์๋ฏธ๋ก ์ง์ฅ์ ๋ง๋ณด๊ฒ ๋๋ค.(โฆ)
๋ ๋ ํผ๋ฐ์ค๋ฅผ ์ฒ์ ๋ง๋ ํ ๋ ํธ์ด[4]๊ฐ '10์ต ๋ถ์ง๋ฆฌ ์ค์'(billion dollar mistake)์๋ค๊ณ ํ๊ณ ํ ์ ์๋ค. ๋ ํฌ์ธํฐ๋ฅผ ์ฒดํฌํ์ง ์๊ณ ์ฌ์ฉํด์ ๋ฐ์ํ๋ ๋ฒ๊ทธ๊ฐ ์์ฒญ๋๊ฒ ๋ง๊ธฐ ๋๋ฌธ. ๋๋ฌธ์ ์ต์ ์ธ์ด๋ค์ null reference๋ฅผ ๋ฐฐ์ ํ๋ ค๋ ์์ง์์ ๋ณด์ธ๋ค.
๋ด ์์น ์ขํ๋ฅผ ๋ชจ๋ฅธ๋ค๋ฉด (์๋, ๊ฒฝ๋)๋ (Null, Null)์ด ๋๋๋ฐ, ์ด๋ฅผ (0, 0)์ผ๋ก ํด์ํ๋ฉด ์ขํ๋ ์๋ 0๋, ๊ฒฝ๋ 0๋์ ์ํ๋ฆฌ์นด ์ํด์์ผ๋ก ํ์๋๋ค. #
ํํฉLE์์๋ ์ด๊ทธ๋ก์ฑ ๊ธ์ ์ด Null ๋๊ธ์ ๋ฌ์์ฃผ๋ ๋ถ๋ฌธ์จ์ด ์๋ค.
2.1. NullPointerException[ํธ์ง]
Java์์ ๋ญ๊ฐ๋ฅผ ์๋ชปํ์ฌ Null์ ์ฐธ์กฐํ๋ค๊ฑฐ๋ ํ๋ ์ํฉ์ ๋จ๋ ์ค๋ฅ์ด๋ค. Java ํ๋ก๊ทธ๋๋ฐ์ ํด๋ณด๋ฉด ์ ๋ง ์ง๊ธ์ง๊ธํ๊ฒ ๋ง์ด ๋จ๊ธฐ ๋๋ฌธ์, ํ๋ก๊ทธ๋๋จธ ์ ๋จธ๋ก ์ฐ์ด๊ธฐ๋ ํ๊ณ , ์๋ฐ ํ์ ์ธ์ด์ธ Kotlin์ ๊ฒฝ์ฐ๋ ์ด๊ฑธ ํด๊ฒฐํ๊ธฐ ์ํด ์ฌ๋ฌ๊ฐ์ง๋ก ๋ง์ด ๋
ธ๋ ฅํ๋ค.
5ch ํ๋ก๊ทธ๋๋จธ ๊ฒ์ํ์์๋ NullPointerException์ ๊ฐ๋๋ก ์ค์ฌ '๋๋ฃจํฌ' ๋ผ๊ณ ๋ถ๋ฅด๋๋ฐ '๋๋ฃจํฌ'๋ผ๊ณ ํ๋ฉด '๊ฐ(ใฌใ)'์ด๋ผ ๋ตํ๋ ์๋ฌต์ ๋ฃฐ์ด ์๋ค๊ณ ํ๋ค. Steins;Gate 0์์๋ ๋์จ๋ค.
5ch ํ๋ก๊ทธ๋๋จธ ๊ฒ์ํ์์๋ NullPointerException์ ๊ฐ๋๋ก ์ค์ฌ '๋๋ฃจํฌ' ๋ผ๊ณ ๋ถ๋ฅด๋๋ฐ '๋๋ฃจํฌ'๋ผ๊ณ ํ๋ฉด '๊ฐ(ใฌใ)'์ด๋ผ ๋ตํ๋ ์๋ฌต์ ๋ฃฐ์ด ์๋ค๊ณ ํ๋ค. Steins;Gate 0์์๋ ๋์จ๋ค.
3. ์๋จธ๋ ์ฝ์ด 4์ ๋งํฌ์ค ๋ฏธ๋ ์์ฐ๋ฆฌ์์ ํ์น๊ธฐ[ํธ์ง]
๋ฏธ๋ ์์ฐ๋ฆฌ์ ๋ฌธ์ ์ฐธ๊ณ .
4. DC ์ฝ๋ฏน์ค ํ๋์ ๋น๋ฐ[ํธ์ง]
์ค๋ ฅ ์กฐ์ : ์๊ฐ๋ฝ์ ์ฝ๊ฐ์ ์ ์ค์ฒ๋ฅผ ํตํด Null์ ๋ฌด์ค๋ ฅ ์ํ๋ฅผ ์ ์ด ํ ์์๋ ์ง์ญํ ๋ ์ค๋ ฅ ์์ญ์ ๋ง๋ค ์ ์์ต๋๋ค. ๊ทธ๋ ์ง๊ตฌ ์์ฒด์ ์ค๋ ฅ ํ์ ์ฌ์ฉํ์ง ์๊ณ ์์ ์ ๋
น์ ์ด์ ์ ์ฌ์ฉํฉ๋๋ค
5. ๋ฉํ๊ธฐ์ด ์๋ฆฌ์ฆ์ ๋ฑ์ฅ์ธ๋ฌผ[ํธ์ง]
๊ทธ๋ ์ด ํญ์ค | |
Null | |
์ผ๋ณธ์ดํ ์ฑ์ฐ๋ ์ถฉ๊ฒฉ๊ณผ ๊ณตํฌ์ ํ์ฟ ์ผ๋ง ์ค, ์์ดํ์ Larc Spies. ์ฌ์ค ์ถฉ๊ฒฉ๊ณผ ๊ณตํฌ...๋ผ๊ณ ๋ ํด๋ Null์ ์ ์ฒด(์คํฌ์ผ๋ฌ)์ ๊ทธ ์ฑ์ฐ๋ฅผ ์๊ฐํ๋ฉด ํด๋น ์บ๋ฆญํฐ์ ์๋
์์ ์์ฑ์ผ๋ก ๊ฝค ์ด์ธ๋ฆฌ๋ ๋ฏธ์ฑ์ด๋ค.
์ต๊ฐ์ ์ ์ฌ(์ ๋๋ณ์ฌ) ๊ณํ์ผ๋ก ์ธํด ์ ์ ๋ฐ ์ก์ฒด๊ฐ์กฐ๋ฅผ ๋นํ ๋ณ์ฌ. ์ดํ ์ต๊ฐ์ ์ ์ฌ๊ณํ์ด ํ๊ธฐ๋์ ์ง์ด ๊ด๋ฆฌํ๊ณ ์์๋ค. ์ ์ ๊ฐ์กฐ๋ก ์ธํด ์ธ๊ฐ์ ๊ฐ์ ์ด ์กด์ฌํ์ง ์๊ณ , ์ด๋ ํ ์๋ฌด๋ผ๋ ์ํ์ ํ ์ ์์ง๋ง ์น๋ช ์ ์ธ ๋จ์ ์ด ์กด์ฌํ๊ธฐ์ ๊ณํ์ ์ค๋ ํ๊ธฐ. ๋จ์ ์ ๋ํด์๋ ์ต๊ฐ์ ์ ์ฌ ํญ๋ชฉ ์ฐธ์กฐ.
๋๋ถ์ ๊ฐ๋ฐ๋๋ฒ์กฐ์ฐจ ๋ฐ์ง ๋ชปํ๊ณ , ๊ธฐ์ต๋, ๊ฐ์ ๋, ๊ฐ๋ฐ๋๋ฒ๋ ์๋ค๋ ็ก๋ผ๋ ์๋ฏธ์์ Null์ด๋ผ๋ ์ํธ๋ช ์ ๋ฐ๋๋ค. ๋ณธํธ์์ ์ปค๋ํ์ Null์ ์ธํ์ด๋ผ ํ๊ฐ. ๋ณธํธ ์ด๋ฐ์๋ ๊ธฐ์ฌ๋ถ์กฑ์ผ๋ก ๋ฐฐ์์ก์ ์ ์ ๊ฐ ๋ฆ์ด์ ธ ์ฌ์กฐ์ ์ค์ด์๋ค.
์ดํ ํต ๋ฐ์ฌ ์ฌ์ผ๋ก์ ์ ์ ํ ๋น ๋ณด์ค(๋ค์ดํค๋ ์ค๋ค์ดํฌ)๋ฅผ ์ํฌํ๋ผ๋ ๋ช ๋ น์ ๋ฐ๊ณ ํฌ์ ๋์ง๋ง, ์ ์ ๋์ ์คํจ. ์ค๋ค์ดํฌ๋ ์ค๊ฐ์ ๋์ ํ ์ปค๋์์ ์ํด ์ ์๋นํ๊ณ ํฌ๋ก๊ฐ ๋์ง๋ง Null์ ์ ๋๋ณ์ฌ์ธ ์์ ๊ณผ ๋๋ฑํ ์ ํฌ๋ฅ๋ ฅ์ ๋ณด์ด๋ ๋น ๋ณด์ค์ ์ํด ์์์ ๋ฌธ์ ๊ฐ ์๊ฒจ, ์ดํ์๋ ๋ชจ๋ ๋ช ๋ น์ ๋ฌด์ํ๊ณ ์ค๋ค์ดํฌ๋ฅผ ์ฃฝ์ด๋ ค ์์ง์ธ๋ค. ์์ ์ ๋ง์ผ๋ ค๋ ๋๋ฃ๋ค์ ๋ง์ฒดํ ๋ก ์ฐ์ด๋ฒ๋ฆฌ๋ ๊ฒ์ ๋ค(...). ์ฌ์ง์ด๋ ์ง์ ๋ช ๋ น์กฐ์ฐจ ๋ฌด์ํ๊ณ ๋ฌ๋ ค๋ค๋ค๊ฐ ์ง์ ESP์ ๋์ดํ์ ์ ์ ์๋นํ๊ณ ์กฐ์ ์ค๋ก ๋๋ ค๊ฐ๊ธฐ๋ ํ๋ค.
์ด๊ฒ์ ์๋ฒฝํ์ง ์์ ๊ธฐ์ต์ด๊ธฐํ๊ฐ ์์ธ์ผ๋ก ๊ธฐ์ต์ด๊ธฐํ์ ์ด์ ์ ์๋ฌด๋ ์์ ์ ์ ์์ ๋ณด๋ฑ ๋๋ถ๋ถ์ ์ ๋ณด๊ฐ ์ง์์ง์ง๋ง, ์ ์ผํ๊ฒ ์๋ฌด๋ฅผ ์คํํ๋ฉด์ ์์ ์ด ์ ์ ์ด์กํ๋ ์ ๋ณด๋ง์ด ๊ณ์ ๋จ์ ์์๊ธฐ ๋๋ฌธ. ์ดํ, ์ด๊ธฐํ๊ฐ ๋๋ ์ค์๋ ๊ฟ์ผ๋ก ์ด ์ฅ๋ฉด์ ๊ณ์ ๋ณด๊ฒ๋๊ณ , ์ด๋์ Null์ธ ์์ ์๊ฒ๋ ์ต๊ฐ์ ์ ์ฌ์ ๋ง๋ถ์ด์ ์ด์๋จ๋ ๋ณ์ฌ๋ ์์ด์๋ ์๋๋ค.๋ผ๋ ์ ์ฒด์ฑ์ด ํ๋ฆฝ๋์ด๋ฒ๋ฆฌ๊ฒ ๋์๋ค. ์ด๊ฒ์ ๋น์ทํ ์๋ฌด๋ฅผ ๋ฐ๋ณต์ ์ผ๋ก ํํ ํ์ ๋ฌด์์์ ์ผ๋ก ๊ฐ์ธ๋ ๊ธฐ์ต์ด ์ํฅ์ ์ฃผ์ง ์์๋ ์ถ๋ค.
ํ์ฐธ ๋ฑ์ฅ์์ด ๋ธํ๋ค๊ฐ ์ค๋ค์ดํฌ ์ผํ์ด ๋ณ์ ์์ ์ํํญํ์ ์ฅ์นํ์ ๋ ์ค๋ค์ดํฌ๋ฅผ ์ฐพ์ ํค๋งค๋ฉด์ ์์ ์ ๋๋ฃ๋ค์ ์ด์กํ๋ค๊ฐ ์ค๋ค์ดํฌ์ ๋ง์ฃผ์ณ์ 2์ฐจ์ ์ ๋ฒ์ธ๋ค. 2์ฐจ์ ์์ ๋์ ํ๊ธฐ ์ ์ ์ค๋ค์ดํฌ๊ฐ Null์ ๊ธฐ์ตํด๋ด๋ฉด์ ๊ทธ์ ๊ณผ๊ฑฐ๊ฐ ๋๋ฌ๋๋ค.
1,2์ฐจ ๊ณตํ ํจํด์ ๋์ผํ๋ฐ ๋ง์ฒดํ ์ M10 ์๊ทธ๋จ์ ์ฌ์ฉํ๋ฉฐ ๊ณต๊ฒฉํ๋ค. ํฌํฐ๋ธ ์ต์ค์ ๋ณด์ค์ ์ด ๊ฑฐ์ ๊ทธ๋ ์ง๋ง ์ด๋ฒคํธ ์ ๋๋ฉ์ด์ ์์ ๋ฌ์ฌ๋๋ ๊ฒ์ ๋นํด์ ๊ต์ฅํ ์ง๋ฆฌํ๊ณ ๋ฐ๋ ฅ์๋ ์ ํฌ๋ฅผ ํด์ผํ๋ค(...) ๋ณด์ค๋ต๊ฒ CQC๋ ๊ฑธ๋ฆฌ์ง ์๊ณ ๋กค๋ง์ผ๋ก ๋ค์ด๋๋ฉด ์นผ๋ถ๋ฆผ์ ํ๋ฏ๋ก ์ด์ง๋ก ์น๋ถ๋ฅผ ๋ด์ผํ๋ค. ์ ๋ฉด์์ ์ด์ง์ ํ๋ฉด ์นผ๋ก ์ดํ์ ํ๊ฒจ๋ด๋๋ฐ ์ฑ๊ธ์ก์ ์๋ฏธ์ ๋ํ๋งํผ์ ์ ๋ฐฉ์ดํ์ง ๋ชปํ๋ค.
์ด์ 10๋ฐ์ฉ 3๋ฒ ์๊ณ ์ฌ์ฅ์ ํ๋๋ฐ ์ด์ ์ ๋ ์ฝ๋์์ ์จ์ด์๋ค๊ฐ ํ๋ฒ ์๊ณ ๋์ ๋์ด ์ ๊น ๋ฉ์นซํ๋์ฌ์ด์ ๋์์๋ค๊ฐ ์ด์ ์๋ฉด ๋ค์ ์ฝ๋๋ก ์จ๋๊ฑธ ๋ฐ๋ณต. ๋์ด 3๋ฒ์ ์๊ณ ์ฅ์ ์ ์์ํ๋ฉด ๋ ๋ค๋ฐ์ณ๋์์ ๋จธ๋ฆฌ์ ์ด์์ ๋ฐ์์ฃผ๋ ์์ผ๋ก ๊ณต๋ตํ๋ฉด ๊ฝค ์ฝ๊ฒ ํด๋ฆฌ์ด ํ ์ ์๋ค. ํ์ด๋ฐ์ด ๋ฆ์ผ๋ฉด ๊ณต๊ฒฉ์ ์คํจํ๋ ์ฃผ์. ๋ณ ์๋ฏธ์์ง๋ง ๊ฑด๋ฌผ์๋ ์์ฃผ ๋ฉ๋ฆฌ๊น์ง ๋๋ง๊ฐ๋ฉด ์ ํ๋ฅผ ํ๋ฉฐ ์ซ์์ค๋๊ฑธ ๊ฐ์ํ ์ ์๋ค. ๊ณต๊ฒฉ ํจํด ์์ฒด๋ 1, 2์ฐจ์ ์ด ๋์ผ. ํ์ด์ ๊ณผ ๋ฌ๋ฆฌ ์ ํฌ์ ๊ฒฐ๋ง์ ์คํ๋ฏธ๋ ํฌ์ด๊ฑด ์ผ๋ฐ ํฌ์ด๊ฑด ๋์ผํ๋ฏ๋ก ๋ง์๋๊ณ M16A1 ๊ฐ์ ๊ฑธ๋ก ์ด์ง์ ํด๋ ์๊ด์๋ค. ๋ํ์ ํ๊ฒจ๋ด์ง ๋ชปํ๋ ๊ฒ์ ์ด์ฉํด์ ์ค์ ๋กฏ(2์ฃผ์ฐจ ์ดํ)์ด๋ ๊ถ์ด S๋ญํฌ์ธ ๋์์๊ฒ SAA๋ฅผ ๋ค๋ ค์ ๋๋ง๋ค๋๋ฉด์ ์ ๋นํ ์๋ฌด๋ฐ๋ ์ด์ง๋งํด๋ ์ฝ๊ฒ ์ด๊ธธ ์ ์๋ค.
์ฒซ๋ฒ์งธ ์ ํฌ๋๋ SAA๋ฅผ ์ป์ง๋ชปํ ์ฑ ์น๋ค์ผํ๋๋ฐ RPG7์ ๊ฐ์ง๊ณ ์์ผ๋ฉด ํจ์ฌ ์ฝ๊ฒ ์ก์์ ์๋ค. NULL์ ๋ฐ์น์ ๋๊ณ ์๋ฉด ์คํ๋ ์ฌ ๋ฐ๋ฏธ์ง๋ฅผ ์ ๊ณ ์ฐ๋ฌ์ง๋ค. ๋ช๋ฒํด์ฃผ๋ฉด ์ฝ๊ฒ ํด๋ฆฌ์ด ํ ์ ์๋ค. RPG7์ NULL๊ณผ ์ ํฌํ๊ธฐ์ ๊ตฌ๋ฆ๋ค๋ฆฌ๊ฐ ์๋ ๊ฑด๋ฌผ ์ฅ์์์ ์ต๋์ด ๊ฐ๋ฅํ๋ฉฐ ์ฃผ๋ณ์ RPG๋ฅผ ๋ค๊ณ ์๋ ๋ณ์ฌ๋ค์ด ์๊ธฐ์ ๋ณด์ค์ ์ ๋ค์ด๊ฐ๊ธฐ์ ๋ฏธ๋ฆฌ ํ ์๊ธ์ ํด๋๋ ๊ฒ์ด ์ข๋ค. ์ฐธ๊ณ ๋ก ์ด ๋ฐฉ๋ฒ์ ๋ฐ์ ์์์ ๋ฒ์ด์ง๋ 2์ฐจ์ ๋๋ ์จ๋จน์ ์ ์๋ค.
์ฌ๋ด์ด์ง๋ง Null์ด๋ผ๋ ์ํธ๋ช ์ '์ ๋ก'์ ๋น์ทํ ๋ป์ด๋ฉด์๋ ๋ค๋ฅธ ๋ป์ด๋ค. ๋ ๋ค ์๋ฌด๊ฒ๋ ์กด์ฌํ์ง ์๋ ๊ฒ, ็ก๋ฅผ ๋ํ๋ด๋ ์๋ฏธ์์๋ ๊ฐ์ง๋ง, ์์น๋ก ํํํ๋ฉด ์ ๋ก๋ ์ซ์์ 0(์ ์๋ก์ -1๊ณผ +1 ์ฌ์ด์ ๊ฐ์ ๊ฐ๋), Null์ 0๊ฐ์กฐ์ฐจ๋ ์กด์ฌํ์ง ์๋ ์๋ฌด ์์น๋ ๊ฐ์ง์ง ์๋ ๊ฐ์ ์๋ฏธํ๋ค. ์ด ๋ป์ด ์ค์ํ ์ด์ ๊ฐ ์๋๋ฐ, ์์ ๋ด์ฉ์ ๊ด๋ จํ์ฌ ํฌํฐ๋ธ์ต์ค ๋ณธํธ์์ ์ ๊ตญ์๋ค๊ณผ ๊ด๋ จ๋ ๋ก๋ฐฅํ๋๊ฐ ๋์ ธ์ง๊ธฐ ๋๋ฌธ. ์ง๊ณผ ์ค์ ๋กฏ๊ณผ์ ์ ํ๋ด์ฉ์์ ํ์ธ ํ ์ ์๋ค.
์ต๊ฐ์ ์ ์ฌ(์ ๋๋ณ์ฌ) ๊ณํ์ผ๋ก ์ธํด ์ ์ ๋ฐ ์ก์ฒด๊ฐ์กฐ๋ฅผ ๋นํ ๋ณ์ฌ. ์ดํ ์ต๊ฐ์ ์ ์ฌ๊ณํ์ด ํ๊ธฐ๋์ ์ง์ด ๊ด๋ฆฌํ๊ณ ์์๋ค. ์ ์ ๊ฐ์กฐ๋ก ์ธํด ์ธ๊ฐ์ ๊ฐ์ ์ด ์กด์ฌํ์ง ์๊ณ , ์ด๋ ํ ์๋ฌด๋ผ๋ ์ํ์ ํ ์ ์์ง๋ง ์น๋ช ์ ์ธ ๋จ์ ์ด ์กด์ฌํ๊ธฐ์ ๊ณํ์ ์ค๋ ํ๊ธฐ. ๋จ์ ์ ๋ํด์๋ ์ต๊ฐ์ ์ ์ฌ ํญ๋ชฉ ์ฐธ์กฐ.
๋๋ถ์ ๊ฐ๋ฐ๋๋ฒ์กฐ์ฐจ ๋ฐ์ง ๋ชปํ๊ณ , ๊ธฐ์ต๋, ๊ฐ์ ๋, ๊ฐ๋ฐ๋๋ฒ๋ ์๋ค๋ ็ก๋ผ๋ ์๋ฏธ์์ Null์ด๋ผ๋ ์ํธ๋ช ์ ๋ฐ๋๋ค. ๋ณธํธ์์ ์ปค๋ํ์ Null์ ์ธํ์ด๋ผ ํ๊ฐ. ๋ณธํธ ์ด๋ฐ์๋ ๊ธฐ์ฌ๋ถ์กฑ์ผ๋ก ๋ฐฐ์์ก์ ์ ์ ๊ฐ ๋ฆ์ด์ ธ ์ฌ์กฐ์ ์ค์ด์๋ค.
์ดํ ํต ๋ฐ์ฌ ์ฌ์ผ๋ก์ ์ ์ ํ ๋น ๋ณด์ค(๋ค์ดํค๋ ์ค๋ค์ดํฌ)๋ฅผ ์ํฌํ๋ผ๋ ๋ช ๋ น์ ๋ฐ๊ณ ํฌ์ ๋์ง๋ง, ์ ์ ๋์ ์คํจ. ์ค๋ค์ดํฌ๋ ์ค๊ฐ์ ๋์ ํ ์ปค๋์์ ์ํด ์ ์๋นํ๊ณ ํฌ๋ก๊ฐ ๋์ง๋ง Null์ ์ ๋๋ณ์ฌ์ธ ์์ ๊ณผ ๋๋ฑํ ์ ํฌ๋ฅ๋ ฅ์ ๋ณด์ด๋ ๋น ๋ณด์ค์ ์ํด ์์์ ๋ฌธ์ ๊ฐ ์๊ฒจ, ์ดํ์๋ ๋ชจ๋ ๋ช ๋ น์ ๋ฌด์ํ๊ณ ์ค๋ค์ดํฌ๋ฅผ ์ฃฝ์ด๋ ค ์์ง์ธ๋ค. ์์ ์ ๋ง์ผ๋ ค๋ ๋๋ฃ๋ค์ ๋ง์ฒดํ ๋ก ์ฐ์ด๋ฒ๋ฆฌ๋ ๊ฒ์ ๋ค(...). ์ฌ์ง์ด๋ ์ง์ ๋ช ๋ น์กฐ์ฐจ ๋ฌด์ํ๊ณ ๋ฌ๋ ค๋ค๋ค๊ฐ ์ง์ ESP์ ๋์ดํ์ ์ ์ ์๋นํ๊ณ ์กฐ์ ์ค๋ก ๋๋ ค๊ฐ๊ธฐ๋ ํ๋ค.
์ด๊ฒ์ ์๋ฒฝํ์ง ์์ ๊ธฐ์ต์ด๊ธฐํ๊ฐ ์์ธ์ผ๋ก ๊ธฐ์ต์ด๊ธฐํ์ ์ด์ ์ ์๋ฌด๋ ์์ ์ ์ ์์ ๋ณด๋ฑ ๋๋ถ๋ถ์ ์ ๋ณด๊ฐ ์ง์์ง์ง๋ง, ์ ์ผํ๊ฒ ์๋ฌด๋ฅผ ์คํํ๋ฉด์ ์์ ์ด ์ ์ ์ด์กํ๋ ์ ๋ณด๋ง์ด ๊ณ์ ๋จ์ ์์๊ธฐ ๋๋ฌธ. ์ดํ, ์ด๊ธฐํ๊ฐ ๋๋ ์ค์๋ ๊ฟ์ผ๋ก ์ด ์ฅ๋ฉด์ ๊ณ์ ๋ณด๊ฒ๋๊ณ , ์ด๋์ Null์ธ ์์ ์๊ฒ๋ ์ต๊ฐ์ ์ ์ฌ์ ๋ง๋ถ์ด์ ์ด์๋จ๋ ๋ณ์ฌ๋ ์์ด์๋ ์๋๋ค.๋ผ๋ ์ ์ฒด์ฑ์ด ํ๋ฆฝ๋์ด๋ฒ๋ฆฌ๊ฒ ๋์๋ค. ์ด๊ฒ์ ๋น์ทํ ์๋ฌด๋ฅผ ๋ฐ๋ณต์ ์ผ๋ก ํํ ํ์ ๋ฌด์์์ ์ผ๋ก ๊ฐ์ธ๋ ๊ธฐ์ต์ด ์ํฅ์ ์ฃผ์ง ์์๋ ์ถ๋ค.
ํ์ฐธ ๋ฑ์ฅ์์ด ๋ธํ๋ค๊ฐ ์ค๋ค์ดํฌ ์ผํ์ด ๋ณ์ ์์ ์ํํญํ์ ์ฅ์นํ์ ๋ ์ค๋ค์ดํฌ๋ฅผ ์ฐพ์ ํค๋งค๋ฉด์ ์์ ์ ๋๋ฃ๋ค์ ์ด์กํ๋ค๊ฐ ์ค๋ค์ดํฌ์ ๋ง์ฃผ์ณ์ 2์ฐจ์ ์ ๋ฒ์ธ๋ค. 2์ฐจ์ ์์ ๋์ ํ๊ธฐ ์ ์ ์ค๋ค์ดํฌ๊ฐ Null์ ๊ธฐ์ตํด๋ด๋ฉด์ ๊ทธ์ ๊ณผ๊ฑฐ๊ฐ ๋๋ฌ๋๋ค.
1,2์ฐจ ๊ณตํ ํจํด์ ๋์ผํ๋ฐ ๋ง์ฒดํ ์ M10 ์๊ทธ๋จ์ ์ฌ์ฉํ๋ฉฐ ๊ณต๊ฒฉํ๋ค. ํฌํฐ๋ธ ์ต์ค์ ๋ณด์ค์ ์ด ๊ฑฐ์ ๊ทธ๋ ์ง๋ง ์ด๋ฒคํธ ์ ๋๋ฉ์ด์ ์์ ๋ฌ์ฌ๋๋ ๊ฒ์ ๋นํด์ ๊ต์ฅํ ์ง๋ฆฌํ๊ณ ๋ฐ๋ ฅ์๋ ์ ํฌ๋ฅผ ํด์ผํ๋ค(...) ๋ณด์ค๋ต๊ฒ CQC๋ ๊ฑธ๋ฆฌ์ง ์๊ณ ๋กค๋ง์ผ๋ก ๋ค์ด๋๋ฉด ์นผ๋ถ๋ฆผ์ ํ๋ฏ๋ก ์ด์ง๋ก ์น๋ถ๋ฅผ ๋ด์ผํ๋ค. ์ ๋ฉด์์ ์ด์ง์ ํ๋ฉด ์นผ๋ก ์ดํ์ ํ๊ฒจ๋ด๋๋ฐ ์ฑ๊ธ์ก์ ์๋ฏธ์ ๋ํ๋งํผ์ ์ ๋ฐฉ์ดํ์ง ๋ชปํ๋ค.
์ด์ 10๋ฐ์ฉ 3๋ฒ ์๊ณ ์ฌ์ฅ์ ํ๋๋ฐ ์ด์ ์ ๋ ์ฝ๋์์ ์จ์ด์๋ค๊ฐ ํ๋ฒ ์๊ณ ๋์ ๋์ด ์ ๊น ๋ฉ์นซํ๋์ฌ์ด์ ๋์์๋ค๊ฐ ์ด์ ์๋ฉด ๋ค์ ์ฝ๋๋ก ์จ๋๊ฑธ ๋ฐ๋ณต. ๋์ด 3๋ฒ์ ์๊ณ ์ฅ์ ์ ์์ํ๋ฉด ๋ ๋ค๋ฐ์ณ๋์์ ๋จธ๋ฆฌ์ ์ด์์ ๋ฐ์์ฃผ๋ ์์ผ๋ก ๊ณต๋ตํ๋ฉด ๊ฝค ์ฝ๊ฒ ํด๋ฆฌ์ด ํ ์ ์๋ค. ํ์ด๋ฐ์ด ๋ฆ์ผ๋ฉด ๊ณต๊ฒฉ์ ์คํจํ๋ ์ฃผ์. ๋ณ ์๋ฏธ์์ง๋ง ๊ฑด๋ฌผ์๋ ์์ฃผ ๋ฉ๋ฆฌ๊น์ง ๋๋ง๊ฐ๋ฉด ์ ํ๋ฅผ ํ๋ฉฐ ์ซ์์ค๋๊ฑธ ๊ฐ์ํ ์ ์๋ค. ๊ณต๊ฒฉ ํจํด ์์ฒด๋ 1, 2์ฐจ์ ์ด ๋์ผ. ํ์ด์ ๊ณผ ๋ฌ๋ฆฌ ์ ํฌ์ ๊ฒฐ๋ง์ ์คํ๋ฏธ๋ ํฌ์ด๊ฑด ์ผ๋ฐ ํฌ์ด๊ฑด ๋์ผํ๋ฏ๋ก ๋ง์๋๊ณ M16A1 ๊ฐ์ ๊ฑธ๋ก ์ด์ง์ ํด๋ ์๊ด์๋ค. ๋ํ์ ํ๊ฒจ๋ด์ง ๋ชปํ๋ ๊ฒ์ ์ด์ฉํด์ ์ค์ ๋กฏ(2์ฃผ์ฐจ ์ดํ)์ด๋ ๊ถ์ด S๋ญํฌ์ธ ๋์์๊ฒ SAA๋ฅผ ๋ค๋ ค์ ๋๋ง๋ค๋๋ฉด์ ์ ๋นํ ์๋ฌด๋ฐ๋ ์ด์ง๋งํด๋ ์ฝ๊ฒ ์ด๊ธธ ์ ์๋ค.
์ฒซ๋ฒ์งธ ์ ํฌ๋๋ SAA๋ฅผ ์ป์ง๋ชปํ ์ฑ ์น๋ค์ผํ๋๋ฐ RPG7์ ๊ฐ์ง๊ณ ์์ผ๋ฉด ํจ์ฌ ์ฝ๊ฒ ์ก์์ ์๋ค. NULL์ ๋ฐ์น์ ๋๊ณ ์๋ฉด ์คํ๋ ์ฌ ๋ฐ๋ฏธ์ง๋ฅผ ์ ๊ณ ์ฐ๋ฌ์ง๋ค. ๋ช๋ฒํด์ฃผ๋ฉด ์ฝ๊ฒ ํด๋ฆฌ์ด ํ ์ ์๋ค. RPG7์ NULL๊ณผ ์ ํฌํ๊ธฐ์ ๊ตฌ๋ฆ๋ค๋ฆฌ๊ฐ ์๋ ๊ฑด๋ฌผ ์ฅ์์์ ์ต๋์ด ๊ฐ๋ฅํ๋ฉฐ ์ฃผ๋ณ์ RPG๋ฅผ ๋ค๊ณ ์๋ ๋ณ์ฌ๋ค์ด ์๊ธฐ์ ๋ณด์ค์ ์ ๋ค์ด๊ฐ๊ธฐ์ ๋ฏธ๋ฆฌ ํ ์๊ธ์ ํด๋๋ ๊ฒ์ด ์ข๋ค. ์ฐธ๊ณ ๋ก ์ด ๋ฐฉ๋ฒ์ ๋ฐ์ ์์์ ๋ฒ์ด์ง๋ 2์ฐจ์ ๋๋ ์จ๋จน์ ์ ์๋ค.
์ฌ๋ด์ด์ง๋ง Null์ด๋ผ๋ ์ํธ๋ช ์ '์ ๋ก'์ ๋น์ทํ ๋ป์ด๋ฉด์๋ ๋ค๋ฅธ ๋ป์ด๋ค. ๋ ๋ค ์๋ฌด๊ฒ๋ ์กด์ฌํ์ง ์๋ ๊ฒ, ็ก๋ฅผ ๋ํ๋ด๋ ์๋ฏธ์์๋ ๊ฐ์ง๋ง, ์์น๋ก ํํํ๋ฉด ์ ๋ก๋ ์ซ์์ 0(์ ์๋ก์ -1๊ณผ +1 ์ฌ์ด์ ๊ฐ์ ๊ฐ๋), Null์ 0๊ฐ์กฐ์ฐจ๋ ์กด์ฌํ์ง ์๋ ์๋ฌด ์์น๋ ๊ฐ์ง์ง ์๋ ๊ฐ์ ์๋ฏธํ๋ค. ์ด ๋ป์ด ์ค์ํ ์ด์ ๊ฐ ์๋๋ฐ, ์์ ๋ด์ฉ์ ๊ด๋ จํ์ฌ ํฌํฐ๋ธ์ต์ค ๋ณธํธ์์ ์ ๊ตญ์๋ค๊ณผ ๊ด๋ จ๋ ๋ก๋ฐฅํ๋๊ฐ ๋์ ธ์ง๊ธฐ ๋๋ฌธ. ์ง๊ณผ ์ค์ ๋กฏ๊ณผ์ ์ ํ๋ด์ฉ์์ ํ์ธ ํ ์ ์๋ค.
์ ํฌ ์ ์ ๊ทธ์ ๋ชธ๋๋ฆผ์์ ์ค๋ค์ดํฌ๊ฐ ์์ ์ด Null๊ณผ ๋ง๋ ์ ์ด ์์์ ๋ ์ฌ๋ฆฐ๋ค. Null์ 4๋ ์ ๋ชจ์ ๋นํฌ์์ ๋ง๋ ๋ฐ ์ ๋ถ ๊ฒ๋ฆด๋ผ ์์์ ์๋ ๋ณ์ด์๋ค. ๋น์ ์ด๋ํ ๋ช ๋ง๋์ ๋ ์ผ์ด์ ํจ๊ป ์ ๋ถ๊ตฐ ์์ญ๋ช ์ ํผ์์ ๋๋์งํ๋ ๋ชจ์ต์ ๋ณด์ฌ์ฃผ์๊ณ , ์ด๋ ์ ๋ถ๊ตฐ์ ๋๋ ค์ํ๋ฉด์ 'ํ๋ญํฌ ์๊ฑฐ'๋ผ๋ ๋ณ๋ช ์ ๋ถ์๋ค. ์ฌ๊ธฐ์ ํ๋ญํฌ(frank)๋ ์์งํ๋ค๋ ์๋ฏธ์ด๋ฉฐ ๊ทธ๊ฐ ์ ๋ถ๊ตฐ์ ๋ง์น '์ฌ๋ฅ๊พผ'์ฒ๋ผ ์ด์กํ๋ค๋ ๋ป์ผ๋ก 'ํํฐ'๋ผ๊ณ ๋ถ๋ ๋ค๊ฐ ๊ทธ๊ฐ ๋ ์ผ์ด๋ฅผ ์ฌ์ฉํ๋ ๊ด๊ณ๋ก ์ฌ๋ฅ๊พผ์ด๋ผ๋ ์๋ฏธ์ ๋ ์ผ์ด์ธ '์๊ฑฐ'(Jรคger)๋ผ๋ ์ด๋ฆ์ ๋ถ์ฌ์ค ๊ฒ. ์ค๋ค์ดํฌ๋ '๋ฌด๊ตฌํ ์๋ ์ ์์งํ(frank) ๋ชจ์ต์ผ๋ก ์ ๋ถ๊ตฐ์๊ฒ ์ ๊ทผํด, ๋ํนํ ์ฌ๋ฅ๊พผ(hunter)์ฒ๋ผ ๋ชฉ์จ์ ๋นผ์์์ง.' ๋ผ๋ ๋ง์ ํ๋ค. ์ด์ Null์ ์ ๋๋ณ์ฌ์ธ ์์ ์ด ์๋ ๊ณณ์ ๋ค๋ฅธ ๋ณ์ฌ๋ ์์์ ์์ผ๋ฏ๋ก ์ด๋ฆ ๋ฐ์ ํ์์๋ค๊ณ ๋ค๋น์ง๋ง ์ค๋ค์ดํฌ์๊ฒ ํธ๋ฆฌ๊ณ ๋์ ๊ฒฐ๊ตญ ๊ธฐ์ต์ด ๋์์จ๋ค.
๋ชจ์ ๋นํฌ ๋ด์ ๋น์ ์ ์์ ๋๊ตฌ๋ก ์ด์ฉ๋นํ๋ ์๋ Null, ์ฆ 'ํ๋ญํฌ ์๊ฑฐ'๋ ๋น ๋ณด์ค์๊ฒ ๊ตฌ์ถ๋์ด ๋ณดํธ์์ค๋ก ๋ณด๋ด์ก์ง๋ง, ๊ทธ ํน์ํ ์ฑ์ฅ๊ณผ์ ๋๋ฌธ์ CIA์ ์ฃผ๋ชฉ์ ๋ฐ์ ์ต๊ฐ์ ์ ์ฌ๊ณํ์ ๋์์ผ๋ก ์ง์ ๋์ด๋ฒ๋ฆฐ๋ค. ์๋ง๋ ๊ทธ๊ฐ ๊ฟ์์ ๋ณด์๋ค๋ "๋๋ฅผ ๊ตฌํด์ค ๊ฐํ ํ๊ณผ ์์ ์๋ฆฌ"๋ ์์ ์ ๊ตฌ์ํ๋ ์ฌ๋, ์ฆ ์ค๋ค์ดํฌ๋ฅผ ์๋ฏธํ๋ ๊ฒ์ธ๋ฏํ๋ฉฐ ๊ธฐ์ต์ด ์๋ ์์ ์ ํ๋ญํฌ๋ ๋น ๋ณด์ค๋ฅผ ์์ ์ ๊ตฌ์ํด์ฃผ๊ณ ๊ธฐ์ต์ ๊ณต๋ฐฑ์ ๋ฉ์์ค ์ฌ๋์ผ๋ก ์กด๊ฒฝํ๊ณ ์์๋ค.
๋ฉํ๊ธฐ์ด 2 ์๋ฆฌ๋ ์ค๋ค์ดํฌ๋ฅผ ํด๋ณด์๋ค๋ฉด 'ํ๋ญํฌ ํํฐ'๋ผ๋ ์ด๋ฆ์ด, ๋ฉํ๊ธฐ์ด ์๋ฆฌ๋๋ฅผ ํด๋ณด์๋ค๋ฉด 'ํ๋ญํฌ ์๊ฑฐ'๋ผ๋ ์ด๋ฆ์ด ๋ฏ์ต์ํ ๋ฐ ๊ทธ์ ์ ์ฒด๋ ๋์ค๋ฏธ ํํฐ์ ์ค๋น ์ด์ ํ๋ FOXHOUND์์ ๊ทธ๋ ์ด ํญ์ค๋ผ ๋ถ๋ฆฌ๋ ๋จ์๋ค.
์ดํ ์ค๋ค์ดํฌ์ ๋๋ฃ๋ค์ ๋ณดํธ๋ฅผ ๋ฐ์ผ๋ฉฐ ์๋ฉ์์๋ ๋ก์ด ์บ ๋ฒจ์ด ์ ์ ์ ์ผ๋ก ํฌ๊ฒ ์์ฒ๋ฅผ ์ ์๊ธฐ์ ์๋ฌด๋ ๋ฌด๋ฆฌ๋ผ๋ฉฐ ์ฌํ์ผํฐ๋ก ๋ณด๋ด๋ฒ๋ ค์ ๊ทธ๋๋ก ์ํดํ ์ค ์์์ผ๋ ์ด์ฐ๋ ์ผ์ธ์ง ํ์ ์์ ์ ๊ตฌํด์ค ๋น ๋ณด์ค์๊ฒ ์ํ๋ฅผ ๊ฐ๊ธฐ ์ํด FOXHOUND์ ์ ๋ํ๋ค.(์๋ง๋ ๊ทผ์ฑ์ผ๋ก ์ฌํํ๋ จ์ ์ ๋ถ ๋๋ง์น๋ฏ ์ถ๋ค-_-) ์ดํ ๊ทธ๊ฐ ๋ฉํ๊ธฐ์ด 2 ์๋ฆฌ๋ ์ค๋ค์ดํฌ์์ ํญ์คํ์ด๋๋ฅผ ๋ ๋ ๋น ๋ณด์ค๋ฅผ ๋์ ์์ง๋ฐ๋๋ ํญ์์ ์ฐธ๊ฐํ๊ฒ ๋๋ ๊ฒ๋ ๋๋ฒ์ด๋ ๋น ๋ณด์ค์๊ฒ ๋ชฉ์จ์ ๊ตฌํจ๋ฐ์ ์ํ์ ๊ทธ์ ๋ฐ๋ฅด๋ ์กด๊ฒฝ์ฌ์ด ์์๊ธฐ ๋๋ฌธ.
๊ทธ๋ฆฌ๊ณ ์ด ์ฌ์ด์ ์๋ฌด์ํ์ค์ ๋์ค๋ฏธ๋ฅผ ์ฃผ์์ ์๋์์ผ๋ก ์ผ๊ณ ๋ฏธ๊ตญ์ผ๋ก ๊ฑด๋๊ฐ ๋์ค๋ฏธ๊ฐ ๋ํ์ ๋ค๋๋๊น์ง ๋ท๋ฐ๋ผ์ง๋ฅผ ํด์ฃผ๊ณ ๋ค์ ์ ์ํฐ๋ก ํฅํ๋ค. ์์ธํ ๋ด์ฉ์ ๋์ค๋ฏธ ํํฐ ๋ฌธ์๋ฅผ, ์ดํ์ ํ์ฝ์์ ๊ทธ๋ ์ด ํญ์ค ๋ฌธ์๋ฅผ ์ฐธ๊ณ .
1์ฃผ์ฐจ์์๋ ์ ๋ํฌ ์บ๋ฆญํฐ๋ก ์ฌ์ฉํ ์ ์์ง๋ง 2์ฃผ์ฐจ์์ ํ๋ฒ ์ธ์ด๋ธ ํ๊ณ ๋ค์ ๋ก๋ํ๋ฉด ์๊ตฐ์ผ๋ก ๋ค์ด์์๋ค. ์คํ ๋ฆฌ ์ ๊ฐ๊ฐ ์ผ๋ฐ ํฌ์ด๋ผ๋ ์คํ๋ฏธ๋ ํฌ๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก ์ฃฝ์ง ์์ ๊ฒ์ผ๋ก ์ ๊ฐ๋๊ธฐ ๋๋ฌธ์ธ์ง ํ์ด์ ์ด๋ ์ง์ฒ๋ผ ์คํ๋ฏธ๋ ํฌ ์กฐ๊ฑด์ ๋ถ์ด์์ง ์๋ค. ์ ๋ํฌ ์บ๋ฆญํฐ ์ค์์๋ ์ธ๋งํ ํธ์ ์ํ๋๋ฐ CQC์ ์๋ธ๋จธ์ ๊ฑด ์คํฌ์ด S์ด๊ณ ๋ค๋ฅธ ์ ํฌ๊ณ ๋ฅ๋ ฅ๋ ๊ด์ฐฎ์ํธ์ด๋ผ ์ค๋ํน ํ์ผ๋ก ํ์ฝํ ์ ์๋ ์บ๋ฆญํฐ. ์ผ์ค๋ 60์ผ๋ก ์ค๋ค์ดํฌ๋ณด๋ค ๋์์ ์ ์ ์๋ฌด๋ก ์ ๊ฒฉ์ด๋ค. ์ ์ฉ๋ฌด๊ธฐ์ธ ๋ง์ฒดํ ๋ ํ๋๋ฅด๋ ์๋๊ฐ ์ข ๋๋ฆฌ์ง๋ง 3์ฐ๊ฒฉ์ ๋ง์ผ๋ฉด ๋๋ถ๋ถ์ ์ผ๋ฐ ์ ๋ณ์ ์ฃฝ๋๋ค. ์ ํํ๋ ์์ 1,2ํ๊ฐ ๋น๋๊ฐ๋ 3ํ์งธ๋ง ๋ง์ผ๋ฉด ์ฆ์ฌ(...)๋ผ๋ ๋ฌด์๋ฌด์ํ ๋ฌด๊ธฐ. ์์ด ํ๋ ์ด๋ผ๋ฉด ๊ฝค ์ ์ฉํ๊ธด ํ์ง๋ง ๋ชฐ๋ ๋ฑ๋ค์์ ๋ง์ฒดํ ๋ฅผ ์ฐ์ด๋ ์ ๋๋ก ์ ๊ทผํ ์ ์๋ค๋ฉด ๋ค๋ฅธ ๋ฌด๊ธฐ๋ก๋ ๊ฐ๋จํ๊ฒ ํ๋์ ์์ผ ๋ฌด๋ ฅํํ๊ฑฐ๋ ์ฃฝ์ผ ์ ์์ผ๋ฏ๋ก ์ค์ ๋ก ๋ง์ฒดํ ๊ฐ ํน๋ณํ ์ ์ฉํ์ง๋ ์ข ์๋ฌธ. ์ผ๋ฟ ์ํ์์ ๊ธด๊ธ๋์ฒ๋ก ๊ทผ์ ํ ๋ณ์ฌ๋ค์ ์ฃฝ์ด๊ณ ๋๋ง์น ๋๋ ์ฝ๊ฐ ์ ์ฉํ๋ค.
์ด๋ฆ | ๋ผ์ดํ | ์คํ๋ฏธ๋ | ์ผ์ค | ๊ธฐ๋ณธ์ฅ๋น | ์ปค๋ฆฌ์ด |
๋ (Null) | 130 | 400 | 60 | ๋ง์ฒดํ
(๊ณ ์ ) | ์์ |
์คํฌ๋ ๋ฒจ | ๊ถ์ด | SMG | ์์ด | ์ท๊ฑด | ์ ๊ฒฉ | ์คํ๊ธฐ | CQC | ํฌ์ฒ | ํธ๋ฉ | ๊ธฐ์ | ์๋ฃ |
A | S | A | B | C | C | S | B | A | B | C |
6. ๋ง๋ธ ์ฝ๋ฏน์ค์ ๋[ํธ์ง]
๋(๋ง๋ธ ์ฝ๋ฏน์ค) ๋ฌธ์ ์ฐธ๊ณ
[1] ๋ฌธ์ '0'๊ณผ๋ ๋ค๋ฅด๋ค. ๋ฌธ์ '0'์ ์์คํค ์ฝ๋๊ฐ์ 48
[2] '='์ด 2๊ฐ
[3] '='์ด 3๊ฐ
[4] Tony Hoare. Quick sort๋ฅผ ๋ฐ๋ช
ํ ์ฌ๋์ด๋ค.
[5] ๊ด์ ์์ ์์ฅ์ธ ๊น์น์(้่ดๆด)์ ํํฌ๋จ(ๆดชๅ็ท)์ 4๋จ 2๋
์ค ๋ง๋ด๋ก ํ์ด๋ฌ๋ค.#1#2
[6] ์ค์ ๋ก๋ Ph.D. in East Asian Languages and Civilizations, ์ฆ ๋์ํ ๋ฐ์ฌ์ ๊ฐ๊น๋ค. ํ์ .
[7] ๋์ฌ์ ํ์๋ก ํ์ดํ๋ฉด ์ค๊ตญ ๊ณ ๋ ์
์(ๆก็ธ)์ ํ๋๋ก ์ฑ์ง์ด ์ฌ๋์์ ์ธ์ฐ๋ฉด ๋ฌผ๋ฌ๋์ง ์๋๋ค๊ณ ๋ ํ๊ณ , ๋๋ ๊ฐ๋ฅด์ณ๋ ๋ชป ์์๋จน๊ณ ๋ง์ ํด๋ ๋ชป ์์๋ฃ๋ ๋ฉ์ฒญ์ด์ ์ด๋ฆ์ด๋ผ๊ณ ๋ ํ๋ค.
[8] ๋งน์์ ์ํ๋ฉด ์ด๋๋ผ์ ์ญ์ฌ์ ์ด๋ฆ์ด ๋์ฌ์ด๋ผ๊ณ ํ๋ค. ํ์ง๋ง ใ์ค๊ณ ์์ ์ํ ์ฒ ํ๊ฐ์ใ๋ฅผ ๋น๋กฏํ์ฌ ใ๋ฌ๋ผ์ด ๋ผ๋ง์ ๋์ฌ์ ๋ง๋จใ ๋ฑ์์ ๋ฐํ๋ฏ ํธ์ ๊ทผ๋ณธ ๋ป์ "๋"์ด๋ค. ์ด๋ฆด ๋๋ถํฐ ์ดํด๊ฐ ๋๋ฆฌ๊ณ ์๋ํ์ฌ ์ค์ค๋ก "๋๋๊ฐ๋ฆฌ"๋ผ ์ด๋ฆ์ ์ง์๋ค๋ ๊ฒ. ํ๊ธ ์ด๋ฆ์ด์ง๋ง ๊ทธ ๋ฐ์์ ๋ง๋ ํ์๋ฅผ ๋ป์ ์๊ฐํ์ฌ ๋ถ์ธ ์์ผ๋ก ๋ณด๋ฉด ๋๋ค.