C++์์๋ & ๊ธฐํธ๋ฅผ ํตํด ๋ฐ์ดํฐ์ ์ฃผ์์ ์ ๊ทผํ ์ ์์ต๋๋ค. ๊ฐ์ 16์ง์ ์ซ์๋ก ๋ฐํ๋ฉ๋๋ค. ์์๋ฅผ ๋ณด์ฌ๋๋ฆฌ๊ฒ ์ต๋๋ค. #include using namespace std; int main() { int num{10}; cout
pointer
ํฌ์ธํฐ์ ์ ์ธ์ ๋ค์๊ณผ ๊ฐ์ ๊ตฌ์กฐ๋ก ์งํ๋ฉ๋๋ค. variable_type *pointer_name; asterisk(*)๋ง ์์ด์ง๋ฉด ๋ณ์์ ๋์ผํฉ๋๋ค. ์์ int *int_ptr; double *double_ptr; char *char_ptr; string *string_ptr; ํ์ง๋ง, ์ค์ํ ๊ฒ์ ์ ์ธ๊ณผ ๋์์ ์ด๊ธฐํ๋ฅผ ํด ์ฃผ์ด์ผ ํฉ๋๋ค. ์ด๊ธฐํ๋ฅผ ํ์ง ์์ผ๋ฉด ํฌ์ธํฐ์ ์ฐ๋ ๊ธฐ ์ฃผ์ ๋ฐ์ดํฐ๊ฐ ๋ค์ด์๊ฒ ๋ฉ๋๋ค. ์ด๊ธฐํ๊น์ง ํ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ด ๋ฉ๋๋ค. variable_type *pointer_name {nullptr}; ์์ int *int_ptr {}; double *double_ptr {nullptr}; char *char_ptr {nullptr}; string *string_ptr {nullptr};
Pointer Pointer๋ ๋ณ์์
๋๋ค. ๋ณ์์ ๊ตฌ์ฑ ์์๋ ๋ฉ๋ชจ๋ฆฌ์ ์์น, ๋ณ์ ํ์
, ๊ทธ๋ฆฌ๊ณ ๊ฐ์ ๊ฐ์ง๋๋ค. ํฌ์ธํฐ๋ ๋ค๋ฅธ ๋ณ์๋ ํจ์์ ์ฃผ์๋ฅผ ์ ์ฅํ๋ ๋ณ์์
๋๋ค. ์ด๊ฒ ๋ฌด์จ ๋ป์ด๋๋ฉด, ๋ณ์์ '๊ฐ' ์ ํด๋นํ๋ ๋ถ๋ถ์ด ๋ค๋ฅธ ๋์์ ๋ฉ๋ชจ๋ฆฌ์ ์ฃผ์๋ผ๋ ๊ฒ ์
๋๋ค. ์๋ฅผ ๋ค์ด int x {10}; ์ผ๋ก ์ ์ ๋ณ์ x๋ฅผ ์ ์ธํ๊ณ 10์ ํ ๋นํ๋ค๋ฉด, ๋ณ์ x๋ฅผ ๊ฐ๋ฅดํค๋ ๋ค๋ฅธ ํฌ์ธํฐ๋ฅผ ์ ์ธํ ์ ์์ต๋๋ค. ๊ทธ๋ ๋ค๋ฉด, ํฌ์ธํฐ๋ ์ ์ฌ์ฉํ ๊น์? ํฌ์ธํฐ๊ฐ ์ด๋ฏธ ์กด์ฌํ๋ ๋ณ์๋ฅผ ๊ฐ๋ฅดํค๋ ๋ณ์๋ผ๋ฉด, ๊ทธ๋ฅ ์๋์ ๋ณ์๋ฅผ ์ฌ์ฉํ๋ฉด ๋๋๊ฑฐ ์๋๊น์? ํฌ์ธํฐ ์ฌ์ฉ์ ์ด์ ์์ ์ง๋ฌธ์ ์ด์ด์ ์ด์ ๋ฅผ ์ค๋ช
ํ๊ฒ ์ต๋๋ค. ๋ง์ต๋๋ค. ์๋์ ๋ณ์๋ฅผ ์ง์ ์ฌ์ฉํ๋ฉด ๋ฌธ์ ๊ฐ ์์ต๋๋ค. ํ์ง๋ง, ์ฐ๋ฆฌ๋ ์ข
์ข
ํ๋ก๊ทธ๋จ ์์์ ๋ณต์กํ ๊ตฌ์กฐ๋ก ..