ํ๋ก๊ทธ๋๋ฐ ์ธ์ด/C++ ๊ธฐ์ด28 [C++] 13-1. ์ ์ถ๋ ฅ(feat. ํ์ค์ ์ถ๋ ฅ๊ณผ ํ์ผ์ ์ถ๋ ฅ) โ ์คํธ๋ฆผ ์คํธ๋ฆผ์ ํ๋์ ํ๋ฆ์ด๋ผ๊ณ ์๊ฐํ๋ฉด ๋๋ค. ์๋๊ผญ์ง๋ฅผ ํ์ด๋๊ณ ๋ค๋ชจ๋ ํธ์ค๋ฅผ ๋ผ์ฐ๋ฉด ๋ฌผ์ด ๋ค๋ชจ ๋ชจ์์ผ๋ก ๋์ค๊ณ , ๋๊ทธ๋ ํธ์ค๋ฅผ ๋ผ์ฐ๋ฉด ๋๊ทธ๋๊ฒ ๋์จ๋ค. ์ด์์ฒด์ ๊ฐ ๋ฌผ์ ๊ณต๊ธํ๋ ์์ฒ์ด๊ณ ์คํธ๋ฆผ์ ํธ์ค๋ค. ์ถ๋ ฅ ๋ฐฉํฅ์ ํ๋ฉด(๋ชจ๋ํฐ)์ผ๋ก ์ ํ๋ฉด ํ๋ฉด์ ์ถ๋ ฅ๋๊ณ , ํ์ผ๋ก ์ ํ๋ฉด ํ์ผ์ ์ถ๋ ฅ(์ฐ๊ธฐ)๋๋ค. ์ ๋ ฅ ๋ํ ์ ๋ ฅ ์ฅ์น(ํค๋ณด๋)๋ก ํ ์๋ ์๊ณ ํ์ผ์ ํตํด ์ฝ์ ์๋ ์์ผ๋ฉฐ ํ์ดํ(ํน์ ๋ช ๋ น์ ๊ฒฐ๊ณผ)๊ฐ ๋ ์๋ ์๋ค. ์ ๋์ค ์ด์์ฒด์ ์ ๋ฐ์ ํ C/C++์ ์ ์ถ๋ ฅ์ ๋ฐ์ด ์คํธ๋ฆผ์ผ๋ก ํด์ํ๊ธฐ ๋๋ฌธ์ ์คํธ๋ฆผ์ ๋ํ ์ดํด๊ฐ ์๋ค๋ฉด ๋ฐ์ดํฐ๋ฅผ ๋ค๋ฃจ๊ธฐ ์์ํ๋ค. โ ํ์ค ์คํธ๋ฆผ ํ์ค ์คํธ๋ฆผ์๋ stdin, stdout, stderr ์ธ ๊ฐ์ง๊ฐ ์๋ค. ๊ฐ๊ฐ 0(stdin), 1(stdout), 2(stderr.. 2023. 5. 17. [C++] 12. ๋ฌธ์์ด(feat. ์ง๋ ฌํ) โ ๋ฌธ์์ด ๋ฌธ์์ด(string)์ ๋ฌธ์๋ค์ ์งํฉ์ด๋ฉฐ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๊ฑฐ๋ ์ฃผ๊ณ ๋ฐ์ ๋ ๋ง์ด ์ฌ์ฉํ๋ค. ๊ธฐ์กด C ์คํ์ผ์ ๋ฌธ์์ด ์ฒ๋ฆฌ ๋ฐฉ์์ ์ง๊ด์ ์ด์ง ์๊ธฐ ๋๋ฌธ์ ์ฌ์ฉํ์ง ์๋๋ค. ํ์ง๋ง ๊ธฐ์กด์ ๋ฐฉ์๋๋ก ์ฐ์ฌ์ง ์ฝ๋๊ฐ ์๋ค๋ฉด ์ฝ์ ์ค์ ์์์ผ ํ๊ธฐ ๋๋ฌธ์ ๊ฐ๋จํ ๋ณด๊ณ ๋์ด๊ฐ์. #include int main() { char str[16] = "Hello world"; const char* str2 = "Hello Seoarang"; char c = 'a'; c -= 32; printf("%s\n", str); printf("%s\n", str2); printf("%c\n", c); } // ์ถ๋ ฅ ๊ฒฐ๊ณผ //Hello world //Hello Seoarang //A ๋ฌธ์๋ฅผ ํํํ๋ ์๋ฃํ์ char์ด๋ค. .. 2023. 5. 6. [C++] 11. ํจ์(feat. ์ ์ญํจ์, ๋ฉค๋ฒํจ์, ์ ์ ํจ์, ๋๋คํจ์) ํจ์๋ ํ๋ก๊ทธ๋๋ฐ์ ํต์ฌ์ด๋ค. ๋ณ์๋ ๋ฐ์ดํฐ๊ณ ํจ์๋ ๋์์ ์๋ฏธํ๋ค. ์ฐ๋ฆฌ๋ ํ๋ก๊ทธ๋๋ฐ์ ํตํด์ ์ํ๋ ๊ฒ์ ๊ตฌํํด์ผ ํ๋ฉฐ, ๊ตฌํํ๋ ๋ฐฉ๋ฒ์ด ํจ์์ธ ๊ฒ์ด๋ค. ํ๋ก๊ทธ๋๋ฐ์ ํจ์๋ก ์์ํด์ ํจ์๋ก ๋๋๋ค. ์ค๋์ ํจ์์ ๋ํด ์์๋ณด์. โ ํจ์์ ์ค์์ฑ ํจ์๋ฅผ ์๊ฐํ ๋, ์ปดํจํฐ์ ๊ด์ ์์๋ ์ฝ๋๋ฅผ ์คํํ๋ ํ๋ฆ์ ๋ด๊ณ ์๋ ๊ณณ์ด ํจ์๋ค. ๊ฐ๋ฐ์์ ๊ด์ ์์๋ ์ฝ๋์ ๊ฐ๋ ์ฑ๊ณผ ์ฌ์ฌ์ฉ์ฑ์ ์ํด ์ง์ ๋ง๋๋ ๊ฒ์ ํจ์๋ผ๊ณ ์๊ฐํ๋ค. ๋ ๋ค ์ค์ํ๋ค. ์ด์์ฒด์ ์ ์์คํ ํจ์, ์ธ์ด์์ ์ ๊ณตํ๋ main ํจ์์ ๊ฐ์ด ํ์์ ์ธ ํจ์๋ค์ด ์๋ค. ์ด ํจ์๋ค์ ์ ์ํ์ง ์๊ฑฐ๋ ์๋ชป ๊ตฌํ๋์ด ์๋ค๋ฉด ์น๋ช ์ ์ธ ๊ฒฐํจ์ผ๋ก ์ด์ด์ง๊ธฐ ๋๋ฌธ์ ๋งค์ฐ ์ค์ํ๋ค๊ณ ํ ์ ์๋ค. ํ์ง๋ง ๊ฑฑ์ ํ์ง ๋ง์. ์ฐ๋ฆฌ๊ฐ ์ด๋ฐ ํจ์๋ค์ ์๋๋ฐฉ์๊ณผ ์๋ฆฌ๊น์ง .. 2023. 4. 28. [C/C++] 10. ํฌ์ธํฐ(feat. ์ค๋งํธ ํฌ์ธํฐ) โ ํฌ์ธํฐ C++์ ์ฅ์ ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ง์ ์ ์ผ๋ก ์ ์ดํ ์ ์๋ค๋ ๊ฒ์ด๋ค. ๋ง์ ๊ฐ๋ฐ์์๊ฒ๋ ๋จ์ ์ผ๋ก ๋๊ปด์ง ์ ์๋ค. ๋์ผ๋ก ํคํ ํ์ธํด ๋ณผ ์ ์๋ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์๋ชป ๊ด๋ฆฌํ๋ฉด ํ๋ก๊ทธ๋จ์ด ์ฃฝ์ด๋ฒ๋ฆฌ๊ธฐ ๋๋ฌธ์ด๋ค. ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ง์ ์ ์ดํ๋ ๊ฒ์ด ์ข์ ์๋ ์๊ณ ์๋ ์๋ ์์ง๋ง, ํ์คํ ๊ฑด C/C++์ ์ปดํจํฐ์ ๋ฉ์ธ๋ฉ๋ชจ๋ฆฌ๊ฐ ์ด๋ป๊ฒ ๋์๊ฐ๋์ง ์๊ธฐ์๋ ์ ํฉํ๋ค๋ ๊ฒ์ด๋ค. ํฌ์ธํฐ๋ ์ฃผ์๋ฅผ ๋ด๊ณ ์๋ ๋ณ์์ด๋ค. 64๋นํธ ์ฒด์ ์์ integer ํ์ ์ ํฌ์ธํฐ ๋ณ์๋ ๋ช์ธ๊ฐ๋ฅผ ๋ฌป๋ ์ง๋ฌธ์ ๋ง์ ๋ถ๋ค์ด 4byte๋ผ๊ณ ๋๋ตํ๋ค. ํฌ์ธํฐ๋ณ์๋ ์ฃผ์๋ฅผ ๋ด๊ณ ์๋ ํฌ์ธํฐ๋ณ์๋ ์ปดํจํฐ์ ์๋(word)์ ๊ฐ๋ค. 8๋นํธ ์ฒด์ ์์๋ 1 ์๋๊ฐ 8๋นํธ=1๋ฐ์ดํธ์ด๋ค. ๋ฐ๋ผ์ 64๋นํธ ์ฒด์ ์์๋ ํ์ ์ด ๋ฌด์์ด๊ฑด ๊ฐ์ ํฌ์ธํฐ ๋ณ์์ ํฌ๊ธฐ๋ 64.. 2023. 4. 26. [C/C++] 9. ๋ฐฐ์ด(feat. vector & array) ๊ณ ์ ์ ์ธ c๊ฐ์์์๋ ๋ฐฐ์ด๊ณผ ํฌ์ธํฐ๋ฅผ ๊ฐ์ด ์ค๋ช ํ๋ค. ๋ฐฐ์ด์ ์ด๋ฆ์ด ๊ณง ๋ฐฐ์ด์ ์ฒซ ๋ฒ์งธ ์ฃผ์๋ฅผ ์๋ฏธํ๋ ํฌ์ธํฐ๋ก๋ ์ฐ์ผ ์ ์๊ธฐ ๋๋ฌธ์ด๋ค. ๋ฐฐ์ด ์ฑํฐ์์๋ ์ธ์ด์์ ๊ธฐ๋ณธ์ผ๋ก ์ ๊ณตํ๋ ๋ฐฐ์ด์ ์ฌ์ฉ ๋ฐฉ๋ฒ๊ณผ Standard library๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ์๊ฐํ๋ค. ํฌ์ธํฐ๋ ๋ค์ ์ฑํฐ์์ ์๊ฐํ๊ฒ ๋ค. โ ๋ฐฐ์ด C/C++์์ ๋ฐฐ์ด ์ ์ธ๊ณผ ์ฐ์์ ๋ค์๊ณผ ๊ฐ๋ค. #include void changeVal(double* d) { d[4] = 6.0; } void changeColor(Car* cars) { cars[1].color = "blue"; } int main() { double d[5] = {1.0, 2.0, 3.0, 4.0, 5.0}; Car cars[3]; int arr[] = {7,8,9}; chang.. 2023. 4. 25. [C/C++] 8. ๋ฐ๋ณต๋ฌธ(์ฌํ)(feat. iterator, predicate, lambda) ์ฌ๊ธฐ์๋ C++์ Standard library ์ปจํ ์ด๋์ ์กฐ๊ฑด ์ํ์ ๋ํ ๊ฐ๋ ๋ค์ ์ด์ผ๊ธฐํ๋ค. ๋ค์ ์ฝ๋๋ฅผ ๋ณด๊ณ ์ดํด๊ฐ ์๊ฐ๋ ๋ถ๋ถ์ด ์๋ค๋ฉด ์ฐธ๊ณ ํด๋ณด๋๋ก ํ์. bool NewsScheduler::checkSchedule(Schedule& schedule) { const auto &curMilli = chrono::duration_cast(chrono::system_clock::now().time_since_epoch()).count(); const auto itr = find_if(scheduleMap.rbegin(), scheduleMap.rend(), [&curMilli](const pair &p) { return p.second.start c.. 2023. 4. 22. ์ด์ 1 2 3 4 5 ๋ค์