๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

Problem Solving/C++ ์ •๋ฆฌ9

C++ #4: preprocessor directives preprocessor directives preprocessor๋Š” ์ผ๋ฐ˜ ์ฝ”๋“œ๋ฅผ ์ปดํŒŒ์ผํ•˜๊ธฐ ์ „์— preprocessor directives๋ฅผ ์ฒ˜๋ฆฌํ•œ๋‹ค. preprocessor directives๋Š” ์ „์ฒ˜๋ฆฌ๊ธฐ ์ง€์‹œ์ž๋ผ๊ณ  ํ•˜๋ฉฐ, '#'์œผ๋กœ ์‹œ์ž‘ํ•˜์—ฌ ๊ฐœํ–‰๋ฌธ์ž๋กœ ๋๋‚œ๋‹ค. (์„ธ๋ฏธ์ฝœ๋ก  ๋ถˆํ•„์š”, ๊ฐœํ–‰ ์ง์ „ '\'์„ ์“ฐ๋ฉด ๋‹ค์Œ ์ค„์— ์—ฐ๊ฒฐ ๊ฐ€๋Šฅ) ๋‹ค์–‘ํ•œ ์ข…๋ฅ˜๊ฐ€ ์žˆ์œผ๋ฉฐ ๋‹ค์–‘ํ•œ ์šฉ๋„๋กœ ์“ฐ์ผ ์ˆ˜ ์žˆ์œผ๋‚˜ ์—ฌ๊ธฐ์„œ๋Š” ์ž์ฃผ ์“ฐ์ด๋Š” ์„ธ ๊ฐ€์ง€ ์šฉ๋„๋งŒ ์†Œ๊ฐœํ•œ๋‹ค. 1) Source file inclusion (#include) #include #includ "file" preprocessor๋Š” #include ์ง€์‹œ์ž๋ฅผ ๋งŒ๋‚˜๋ฉด ๋’ค์— ๋ช…์‹œ๋œ ํ—ค๋”๋‚˜ ํŒŒ์ผ์„ ์ง€์‹œ์ž ์œ„์น˜์— ๋ณต์‚ฌํ•ด ๋Œ€์ฒดํ•œ๋‹ค. ๋‘ ๊ฐ€์ง€ ํ˜•ํƒœ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ, implementati.. 2019. 12. 7.
C++ #3: call by value, address, reference call by ... ํ•จ์ˆ˜์˜ ๋งค๊ฐœ๋ณ€์ˆ˜ ์ „๋‹ฌ์„ ์„ค๋ช…ํ•  ๋•Œ, ์ฃผ๋กœ swap ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•ด call by value, call by address, call by reference๋ฅผ ์„ค๋ช…ํ•œ๋‹ค. c++์—์„œ ์„ค๋ช…ํ•˜๋Š” call by address๋Š” ํฌ์ธํ„ฐ ๋ณ€์ˆ˜๋ฅผ ์ด์šฉํ•œ ๊ฒƒ์œผ๋กœ ์ผ๋ฐ˜์ ์œผ๋กœ c์—์„œ ์„ค๋ช…ํ•˜๋Š” call by reference์™€ ๋™์ผํ•˜๋‹ค. (์ด๊ฒŒ ํ—ท๊ฐˆ๋ฆฌ๋Š” ์ ์ธ๋ฐ, ๊ฐœ๋…๊ณผ ์šฉ์–ด ์ •๋ฆฌ์— ์•ฝ๊ฐ„ ๋…ผ๋ž€์˜ ์—ฌ์ง€๊ฐ€ ์žˆ๋Š” ๋“ฏ ํ•˜๋‹ค.) ๋˜ํ•œ ๋ ˆํผ๋Ÿฐ์Šค ๋ณ€์ˆ˜๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ ํ• ๋‹น์„ ๋ฐ›๋Š๋ƒ ๋ฐ›์ง€ ์•Š๋Š๋ƒ์— ๋”ฐ๋ผ ์„ค๋ช…์ด ์—‡๊ฐˆ๋ฆฌ๋Š”๋ฐ ๋ฉ”๋ชจ๋ฆฌ ํ• ๋‹น์„ ๋ฐ›์ง€ ์•Š๊ณ  ์›๋ณธ ๋ณ€์ˆ˜์˜ ๋ณ„์นญ์œผ๋กœ์„œ ํ–‰๋™ํ•œ๋‹ค๋Š” ์„ค๋ช…๋„ ์žˆ๊ณ , ๋ฉ”๋ชจ๋ฆฌ ํ• ๋‹น์„ ๋ฐ›์•„ ์›๋ณธ ๋ณ€์ˆ˜์˜ ์ฃผ์†Œ๊ฐ’์„ ์ €์žฅํ•˜๊ณ  ์žˆ๋‹ค๊ฐ€ ๋ ˆํผ๋Ÿฐ์Šค ๋ณ€์ˆ˜์˜ ๊ฐ’์ด ์ˆ˜์ •๋˜๋ฉด ๋ ˆํผ๋Ÿฐ์Šค ๋ณ€์ˆ˜์— ์ €์žฅ๋˜์–ด ์žˆ๋Š” ์ฃผ์†Œ์— ์žˆ๋Š” ๊ฐ’์„ ์ˆ˜.. 2019. 12. 6.
C++ #2: reference variable reference variable ๋ ˆํผ๋Ÿฐ์Šค ๋ณ€์ˆ˜๋Š” ํฌ์ธํ„ฐ ๋ณ€์ˆ˜ ์‚ฌ์šฉ ์‹œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ์—ฌ๋Ÿฌ ์—๋Ÿฌ๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ํƒ„์ƒํ–ˆ๋‹ค. ํฌ์ธํ„ฐ ๋ณ€์ˆ˜์™€ ๊ฐ™์ด ์‹ค์ œ๋กœ ์ฃผ์†Œ๊ฐ’์„ ์ €์žฅํ•˜์ง€๋งŒ ๋ช‡ ๊ฐ€์ง€ ๋‹ค๋ฅธ ํŠน์ง•๋“ค์ด ์žˆ๋‹ค. 1) ๋ณ€์ˆ˜์˜ ๋ณ„์นญ ๋ ˆํผ๋Ÿฐ์Šค ๋ณ€์ˆ˜๋Š” ์ฐธ์กฐ ๋Œ€์ƒ์˜ ๋ณ„์นญ์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, int num1 = 10; int &num2 = num1; num2 = 20; cout 2019. 12. 5.
C++ #1: iostream, namespace iostream #include์€ preprocessor์— ์˜ํ•ด ์šฐ์„ ์ ์œผ๋กœ ์ฒ˜๋ฆฌ๋œ๋‹ค. iostream์€ cin, cout, endl ๋“ฑ ๊ธฐ๋ณธ ์ž…์ถœ๋ ฅ๊ณผ ๊ด€๋ จ๋œ ๊ฐ์ฒด๋ฅผ ์ •์˜ํ•œ ํ—ค๋”์ด๋‹ค. iostream์€ ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋””๋ ‰ํ„ฐ๋ฆฌ์— ์กด์žฌํ•˜๋ฉฐ, ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ์žˆ๋Š” ๊ฐ์ฒด๋Š” std namespace์— ํฌํ•จ๋˜์–ด ์žˆ๋‹ค. cin, cout cin >> input1 >> input2; cout 2019. 12. 5.