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

c5

[C/C++] 7. ๊ฐœ๋ฐœํ™˜๊ฒฝ ๊ตฌ์„ฑ(windows/linux) C/C++์€ ์ปดํŒŒ์ผ ์–ธ์–ด์ด๋ฉด์„œ ํ”Œ๋žซํผ ์ข…์†์ ์ธ ํŠน์„ฑ์„ ๊ฐ–๊ณ  ์žˆ๋‹ค. ๋‹ค์‹œ ๋งํ•˜๋ฉด ํ”Œ๋žซํผ์— ์ข…์†๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ปดํŒŒ์ผํ•ด์„œ ์–ป์€ ์‹คํ–‰ํŒŒ์ผ์ด ๋งŒ์•ฝ ํ”Œ๋žซํผ์ด ๋‹ค๋ฅด๋‹ค๋ฉด ์‹คํ–‰ํ•  ์ˆ˜ ์—†๋‹ค. ๋Œ€ํ‘œ์ ์ธ ํ”Œ๋žซํผ์ธ ์œˆ๋„์šฐ์™€ ๋ฆฌ๋ˆ…์Šค์—์„œ ๊ฐ๊ฐ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ๊ตฌ์„ฑ์„ ์–ด๋–ป๊ฒŒ ํ•˜๋Š”์ง€ ์‚ดํŽด๋ณด์ž. โœ… windows ์œˆ๋„์šฐ ์šด์˜์ฒด์ œ๋Š” Visual Studio๊ฐ€ 90% ์ด์ƒ์˜ ์ ์œ ์œจ์„ ๋ณด์ธ๋‹ค. ์œˆ๋„์šฐ ์šด์˜์ฒด์ œ์ด๊ธฐ ๋•Œ๋ฌธ์— MS๊ฐ€ ๋งŒ๋“  VS์™€ ํ˜ธํ™˜์ด ์ž˜ ๋˜๊ณ , MSVC ์ปดํŒŒ์ผ๋Ÿฌ๋ฅผ ์ž์ฒด์ ์œผ๋กœ ๋‚ด์žฅํ•˜๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— VS๋งŒ ์„ค์น˜ํ•ด๋„ ๋ณ„๋‹ค๋ฅธ ์ถ”๊ฐ€๋„๊ตฌ๊ฐ€ ํ•„์š” ์—†๋‹ค. ์ปดํŒŒ์ผ, ์‹คํ–‰, ๋ถ„์„๊นŒ์ง€ ํ•œ IDE์—์„œ ์ด๋ฃจ์–ด์ง€๊ธฐ ๋•Œ๋ฌธ์— ํŽธ๋ฆฌํ•˜๋‹ค. ๋‹ค๋งŒ ๋งŽ์€ ๊ธฐ๋Šฅ์ด ์žˆ๋Š” ๋งŒํผ ์„ค์น˜ ์šฉ๋Ÿ‰์ด ํฌ๊ณ  ๋ฌด๊ฒ๋‹ค. ํ˜„์žฌ๋Š” Visual Studio 2022๊นŒ์ง€ ๋‚˜์™€์žˆ๋‹ค. ์„ค์น˜๋Š” ์•„๋ž˜ .. 2023. 4. 11.
[C/C++] 2. ํƒ€์ž…๊ณผ ์—ฐ์‚ฐ์ž(Type & Operator) ํƒ€์ž…(Type) ๋‹ค์Œ์€ C/C++์—์„œ ์ง€์›ํ•˜๋Š” ๊ธฐ๋ณธ ๋ฐ์ดํ„ฐ ํƒ€์ž…(Data Type)์ด๋‹ค. char boolean short int long float double pointer ๊ธฐ๋ณธ ๋ฐ์ดํ„ฐ ํƒ€์ž…์€ ํ”„๋กœ๊ทธ๋žจ์—์„œ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•  ๋•Œ ์–ผ๋งˆ๋งŒํผ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์— ํ• ๋‹นํ•ด์•ผ ํ•˜๋Š”์ง€ ๋ช…์‹œ์ ์œผ๋กœ ์„ ์–ธํ•ด์ฃผ์–ด์•ผ ํ•˜๋Š” ์—ญํ• ์ด๋‹ค. PHP, ํŒŒ์ด์ฌ๊ณผ ๊ฐ™์€ ์ž๋™ ํƒ€์ž… ์–ธ์–ด์˜ ๊ฒฝ์šฐ๋Š” ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•  ๋•Œ ํƒ€์ž…์„ ์ง€์ •ํ•˜์ง€ ์•Š์ง€๋งŒ, ์ด๋Š” ํƒ€์ž…์ด ์—†๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ์–ธ์–ด์ฐจ์›์—์„œ ์ž๋™์œผ๋กœ ์ง€์ •ํ•ด์ฃผ๋Š” ๊ฒƒ์ด๋‹ค. ์œ„ ํ‘œ๋Š” C์–ธ์–ด์—์„œ ์ง€์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ ํƒ€์ž…๊ณผ ํฌ๊ธฐ, ๊ทธ๋ฆฌ๊ณ  ํƒ€์ž…๋ณ„๋กœ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€๊ฐ’์„ ๋‚˜ํƒ€๋‚ธ๋‹ค. ๋งŒ์•ฝ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋Š” ์ตœ์†Œ/์ตœ๋Œ€๊ฐ’์˜ ๋ฒ”์œ„๋ฅผ ๋ฒ—์–ด๋‚œ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋ฉด, ์˜ค๋ฒ„ํ”Œ๋กœ์šฐ๊ฐ€ ๋ฐœ์ƒํ•˜์—ฌ ์˜๋„์น˜ ์•Š์€ ๊ฒฐ๊ณผ๋ฅผ ๊ฐ–๊ฒŒ ๋œ๋‹ค. unsigned๊ฐ€ .. 2021. 3. 12.
[C/C++] 0. ์‹คํ–‰ํŒŒ์ผ์ด ๋งŒ๋“ค์–ด์ง€๋Š” ๊ตฌ์กฐ(feat. ์ปดํŒŒ์ผ๋Ÿฌ) ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋Š” ๋งŒ๋“ค์–ด์ง€๋Š” ๊ณผ์ •์— ๋”ฐ๋ผ์„œ ํฌ๊ฒŒ ์ปดํŒŒ์ผ ์–ธ์–ด(Compile Laguage) ์ธํ„ฐํ”„๋ฆฌํ„ฐ ์–ธ์–ด(Interpreter Laguage) ๋กœ ๋‚˜๋‰œ๋‹ค. ์ปดํŒŒ์ผ ์–ธ์–ด์˜ ๊ฒฝ์šฐ, ์†Œ์Šค๋ฅผ ์ž‘์„ฑํ•˜๊ณ  ์ปดํŒŒ์ผ ๊ณผ์ •์„ ๊ฑฐ์ณ์„œ ์‹คํ–‰ํŒŒ์ผ์ด ๋งŒ๋“ค์–ด์ง€๋Š” ๊ตฌ์กฐ์ด๋‹ค. ์ธํ„ฐํ”„๋ฆฌํ„ฐ ์–ธ์–ด์˜ ๊ฒฝ์šฐ ์ธํ„ฐํ”„๋ฆฌํ„ฐ๊ฐ€ ์†Œ์Šค์˜ ๋ผ์ธ ๋‹จ์œ„๋กœ ํ•ด์„ํ•ด์„œ ์‹คํ–‰ํ•˜๋Š” ๊ตฌ์กฐ์ด๋‹ค. C/C++์€ ์ปดํŒŒ์ผ ์–ธ์–ด์— ํ•ด๋‹น๋˜๊ณ , ์šฐ๋ฆฌ๊ฐ€ ํ”ํžˆ ์“ฐ๋Š” '๋นŒ๋“œ'๊ฐ€ ์ปดํŒŒ์ผ ๊ณผ์ •์„ ํ†ต์นญํ•˜๋Š” ๋‹จ์–ด์ด๋‹ค. (์œˆ๋„์šฐ์˜ ๊ฒฝ์šฐ Visual Studio ๋นŒ๋“œ, ๋ฆฌ๋ˆ…์Šค์˜ ๊ฒฝ์šฐ gcc/g++ or Make ๋ช…๋ น์–ด) ์ฐธ๊ณ ๋กœ, Visual Studio์€ ๋ฒ„์ „์— ๋งž๊ฒŒ ์ปดํŒŒ์ผ๋Ÿฌ๋„ ๊ฐ™์ด ์„ค์น˜๋˜๋ฉฐ, ๋นŒ๋“œ ๋ฐ ๋””๋ฒ„๊ทธ๊นŒ์ง€ ๊ฐ™์ด ์ง„ํ–‰ ํ•  ์ˆ˜ ์žˆ๋‹ค. (VS๋ฒ„์ „๊ณผ ์ปดํŒŒ์ผ๋Ÿฌ ๋ฒ„์ „์ด ๋งž์ง€ ์•Š์œผ๋ฉด ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธด๋‹ค..).. 2021. 3. 10.
[C/C++] 1. ๋ณ€์ˆ˜(Variable) ๋ณ€์ˆ˜๋ผ๋Š” ์ด๋ฆ„์€ "๋ณ€ํ•  ์ˆ˜ ์žˆ๋Š” ์ˆ˜"๋ผ๊ณ  ์ƒ๊ฐ ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ƒ์ˆ˜(๋ณ€ํ•˜์ง€ ์•Š๋Š” ์ˆ˜)์™€ ๋Œ€๋น„๋˜๋Š” ๊ฐœ๋…์ด๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ํ•™์ƒ์‹œ์ ˆ์— ๋ฐฐ์› ๋˜ ํ•จ์ˆ˜(f(x))์—์„œ์˜ x์— ์—ฌ๋Ÿฌ๊ฐ€์ง€ ๊ฐ’์„ ๋Œ€์ž…ํ•ด ๋ณผ ์ˆ˜ ์žˆ๋Š”๋ฐ, ์ด์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค. int foo; foo = 5; ์œ„์˜ ์ฝ”๋“œ์—์„œ foo๊ฐ€ ๋ณ€์ˆ˜๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ด๋ฆ„์ด๋‹ค. ์ปดํ“จํ„ฐ์˜ ๋ฉ”๋ชจ๋ฆฌ ๊ด€์ ์—์„œ ๋ณด๋ฉด, ๋ณ€์ˆ˜ foo๋Š” int์˜ ํฌ๊ธฐ(4byte)๋งŒํผ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„ ์ฐจ์ง€ํ•˜๊ณ  ์ด๋ฆ„์€ foo๋ผ๊ณ  ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด๋‹ค. ๋‹ค๋งŒ, foo๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ ์ž์ฒด์ด๊ฑฐ๋‚˜ ๊ฐ’ 5๋ผ๊ณ  ํ•˜๊ธฐ ๋ณด๋‹ค๋Š” ์ฐจ์ง€ํ•˜๊ณ  ์žˆ๋Š” ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์˜ ์ด๋ฆ„์ด๊ณ , ๊ทธ ๊ณต๊ฐ„์— 5์˜ ๊ฐ’์„ ๋Œ€์ž…ํ–ˆ๋‹ค๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค. C/C++์—์„œ์˜ ๋ณ€์ˆ˜๋Š” ๊ธฐ์ค€์— ๋”ฐ๋ผ ์—ฌ๋Ÿฌ ๋ถ„๋ฅ˜๋กœ ๋‚˜๋‰  ์ˆ˜ ์žˆ๋‹ค. ๋จผ์ € ๋ณ€์ˆ˜์˜ ์‚ฌ์šฉ ๋ฒ”์œ„์— ๋”ฐ๋ผ์„œ, ์ง€์—ญ ๋ณ€์ˆ˜ ์ „์—ญ .. 2021. 3. 10.
[C/C++] ๊ธ€ ์ž‘์„ฑ์— ๊ด€ํ•˜์—ฌ ์•ˆ๋…•ํ•˜์„ธ์š”. GroundP์ž…๋‹ˆ๋‹ค. G-Stack์ด๋ผ๋Š” ๋ธ”๋กœ๊ทธ๋ฅผ ๋งŒ๋“ ์ง€ ์–ผ๋งˆ ๋˜์ง€ ์•Š์•„, C/C++๋ถ€ํ„ฐ ์ฒœ์ฒœํžˆ ์ž‘์„ฑํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ œ๊ฐ€ ๋งŒ๋“  ์ปค๋ฆฌํ˜๋Ÿผ์œผ๋กœ ์ˆœ์ฐจ์ ์œผ๋กœ ์ง„ํ–‰ํ•ด ๋‚˜๊ฐˆ ๊ณ„ํš์ด๋ฉฐ, ๊ธฐ๋ณธ์ ์ธ ๋ฌธ๋ฒ• ๋‚ด์šฉ๋ถ€ํ„ฐ ์‘์šฉ, ๊ณ ๊ธ‰๊ธฐ์ˆ  ๋ฐ C++ 11,14,17์˜ ์ƒˆ๋กœ์šด ๊ธฐ์ˆ ๋“ค๊นŒ์ง€ ์ž‘์„ฑํ•ด๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๋˜, ๊ฐ์ฒด์ง€ํ–ฅ ์–ธ์–ด์ธ C++๋ฅผ ๊ธฐ๋ณธ์œผ๋กœ ์ž‘์„ฑํ•˜๊ณ , C์™€์˜ ์ฐจ์ด์ ์ด ์žˆ๋Š” ๊ฒฝ์šฐ ์„œ์ˆ ํ•ฉ๋‹ˆ๋‹ค. (ํ•„์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•œ ๊ฒฝ์šฐ์— ์„œ์ˆ ํ•ฉ๋‹ˆ๋‹ค.) ๊ธ€์„ ์“ฐ๋Š” ์ด์œ ๋Š” ํฌ๊ฒŒ ๋‘ ๊ฐ€์ง€๋กœ ๋ณผ ์ˆ˜ ์žˆ๊ฒ ๋„ค์š”. ์ฒซ ๋ฒˆ์งธ๋Š”, ์ œ๊ฐ€ C/C++์„ ๋ฐฐ์› ์„ ๋•Œ ๊ต‰์žฅํžˆ ์˜ค๋žซ๋™์•ˆ ํž˜๋“ค๊ฒŒ ๋ฐฐ์› ๋˜ ๊ธฐ์–ต์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์›๋ฆฌ๋„ ์ดํ•ดํ•˜์ง€ ๋ชปํ•œ ์ฑ„ ์‚ฌ์šฉํ•˜๊ธฐ ๋ฐ”๋นด๊ณ  ์ œ๊ฐ€ ์ง  ์ฝ”๋“œ์— ๋Œ€ํ•ด ํ™•์‹ ๋„ ์—†์—ˆ์Šต๋‹ˆ๋‹ค. ๋ฌด์–ธ๊ฐ€ ์•Œ๊ธฐ ์‰ฝ๊ฒŒ ์ •๋ฆฌํ•œ ๋ธ”๋กœ๊ทธ๋ฅผ ์•Œ๊ณ  ์ฐธ๊ณ ํ•ด์„œ ๊ณต๋ถ€ํ•ด๋‚˜๊ฐ„.. 2021. 3. 9.