enum์ ์ ์ํ ์์์ ์ด๋ฆ์ ๋ถ์ฌ์ ๊ด๋ฆฌํ๊ธฐ ์ฝ๊ฒํ๋ค ๊ตณ์ด ์์์ ํ๋ํ๋ ๊ฐ์ ๋์ ์ํด๋ ์๋์ฒ๋ผ ์ด๊น๊ฐ๋ง ์ง์ ํด์ฃผ๋ฉด ์ซ๋ฅด๋ฅต 1์ฉ ์ฆ๊ฐ๋์ด์ ํธ๋ฆฌํ๋ค ๋ง์ฝ ๊ฐ์ ํ๋ํ๋ ์ง์ ํด์ฃผ๊ณ ์ถ์ผ๋ฉด ๊ทธ๋ ๊ฒ ํด๋ ๋ #include enum DayOfWeek { // ์ด๊ฑฐํ ์ ์ Sunday = 0, // ์ด๊น๊ฐ ํ ๋น Monday, Tuesday, Wednesday, Thursday, Friday, Saturday }; int main() { enum DayOfWeek week; // ์ด๊ฑฐํ ๋ณ์ ์ ์ธ week = Tuesday; // ์ด๊ฑฐํ ๊ฐ ํ ๋น printf("%d\n", week); // 2: Tuesday์ ๊ฐ ์ถ๋ ฅ return 0; } ์ด๊ฑฐํ์ ์ผํ๋ก ๊ตฌ๋ถ ์ด๊น๊ฐ ํ ๋นํ๋ฉด ๊ฑฐ๊ธฐ์๋ถํฐ 1์ฉ ์ฆ๊ฐํจ ๋งจ..

์ค๋์ pwnable์ ๋ง์ด ๋์ค๋ mmap ํจ์์ ๋ค๋ค๋ณด๋๋ก ํ๊ฒ ๋ค. mmap์ด ๋ฌด์์ด๊ณ ์ ์ฐ๋์ง? ์ผ๋จ mmap์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ด๋ค ํ์ผ ํน์ ๋๋ฐ์ด์ค์ ๋์์ํค๋ ํจ์์ด๋ค. ๊ทธ๋ ๋ค๋ฉด "๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ์ผ๋ก ๋์์ํจ๋ค๋ ๊ฒ"์ด ๋ฌด์จ ๋ป์ด๊ณ "์" ๊ทธ๋์ผ๋ง ํ ๊น? ๐ค ์ปดํจํฐ ํ๋ก์ธ์ค์์ ๊ฐ ํ๋ก์ธ์ค๋ ๋ค๋ฅธ ํ๋ก์ธ์ค์ ๋ถ๋ฆฌ๋ ์ฃผ์๋ฅผ ๊ฐ์ง๊ณ ์์ด ์๋ก ๊ฒน์น์ง ์๋๋ค. ์ฆ ํ๋ก์ธ์ค ๋ฉ๋ชจ๋ฆฌ๋ ์๋ก ์ค๋ณต๋์ง ์๋๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ํ๋ก์ธ์ค ๊ฐ ๋ฐ์ดํฐ ๊ณต์ ๊ฐ ์ด๋ ต๋ค. ๋ฌผ๋ก ์ด๋ ํ๋ก์ธ์ค ์์ ๋ฐ์ดํฐ๋ฅผ ๋ณดํธํ๊ธฐ์๋ ์ข์ผ๋.. ์ ๋ฐ์์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๊ณต์ ํ๊ณ ์ถ์ ๋๋ ์ฌ์ค ๋ถํธํ ๊ฒ์ด๋ค. ํ์ง๋ง mmap์ ์ด์ฉํ๋ฉด ๊ณต์ ํ๊ณ ์ํ๋ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์์ ํ์ผ๋ก ๋์์์ผ๋๊ณ , ์ด๋ฅผ ์ฌ๋ฌ ํ๋ก์ธ์ค๊ฐ ์ฌ์ฉํ ์ ์๋ค. ํ์ผ์ ์ ์ญ์ ์ธ ๊ฐ์ฒด์ด..

void setbuf (FILE * stream, char *buffer); stream์ buffer๋งํผ ์ฌ์ฉํด์ค๋ค๋ ์๋ฏธ ์ง์ ํด์ค buffer๋ ์ ์ถ๋ ฅ ๋ฒํผ๋ก ์ฌ์ฉํ ๋ฉ๋ชจ๋ฆฌ์ด๋ค. ๋ฒํผ์์ฒด๋ฅผ ์ฌ์ฉํ๋ ๊ฒ ์๋๋ฏ๋ก ๋ฒํผ์๋ ์๋ฌด๋ฐ ๋ณํ๊ฐ ์๋ค. (??) stream stdin(ํ์ค์ ๋ ฅ, 0) stdout(ํ์ค์ถ๋ ฅ, 1) stderr(ํ์ค์๋ฌ, 2) char buf[512]; setbuf('ํ์ผ์ด๋ฆ',buf); ์ด๋ฉด ํ์ผ ํฌ์ธํฐ๋ฅผ 512byte๋งํผ ์ฌ์ฉํ๊ฒ ๋ค๋ ์๋ฏธ!! setbuf('ํ์ผ',NULL); ์ด๋ฐ์์ผ๋ก ๋์ด์์ผ๋ฉด ํจ์ ๋ด๋ถ์์ ํ์ํ๋งํผ ํฌ๊ธฐ๋ฅผ ํ ๋นํด์ ์ฌ์ฉ!! ์์ 1) #include int main(void) { char buf[512]; FILE *fp = fopen("test.txt", ..

Optional์ ๋ฐ๋ก ๊ณต๋ถํ ์ ์ด ์์ด์ ๋์ถฉ ์ค๋ฅ๋ง ๋ดค์ ๋ ์ฌํ๊ป isPresent์ด๋ ifPresent๊ฐ ๊ฐ์ ์ ์ธ์ค ์์๋ค .. ๋ฐ๋ถ ๊ทธ๋์ isPresent()์์ ์ธ์๋ก ์ ๋๋ค์์ ์จ์ฃผ๋์ง ์ดํด๊ฐ์๋๋ค..ํ์ง๋ง ๋ค๋ฅธ ๋ฉ์๋์๋ค๋๊ฒ ใ .. ํฌ์คํธ๊ฐ ๋๋ฌด ์งง์ ์ฃผ์ ์ํผ ์ค๋์ Optional์ด ๋ญ์ง ์์ฃผ ์งง๊ฒ ์ดํด๋ณด๊ณ isPresent/ifPresent/ifPresentOrElse ๋ฉ์๋์ ๋ํด ์ดํด๋ณด๋๋ก ํ๊ฒ ๋ค. Optional์ด๋? ์กด์ฌํ ์๋ ์์ง๋ง ์ ํ ์๋ ์๋ ๊ฐ์ฒด, ์ฆ, “null์ด ๋ ์๋ ์๋ ๊ฐ์ฒด”์ ๊ฐ์ธ๊ณ ์๋ ์ผ์ข ์ ๋ํผ ํด๋์ค์ด๋ค. ์์๊ฐ ์๊ฑฐ๋ ์ต๋ ํ๋ ๋ฐ์ ์๋ Collection์ด๋ Stream์ด๋ผ๊ณ ์๊ฐํด๋ ์ข๋ค. null ๋๋ฌธ์ ์๊ธฐ๋ ๊ท์ฐฎ์์ ํธ๋ค๋งํ๊ธฐ ..

SpringBoot๋ก Java๋ฅผ ์ค๋๋ง์ ์ฌ์ฉํ๊ฒ ๋์๋๋ฐ ์๋ ์ฝ๋๊ฐ ์๋ฆฌ๊ฐ ๋ญ์ง๊ฐ ์ดํด๊ฐ ์๋ผ์ Java ๋ฌธ๋ฒ์ ๊ณต๋ถํด๋ณด์๋ค. ์ด๋ฒ ํฌ์คํธ์์๋ Stream์ ๊ฐ๋ ์ ๋ค๋ฃฌ ํ ์๋ ์ฝ๋์ ๋์ ์๋ฆฌ๋ฅผ ๋ถ์ํด๋ณผ ๊ฒ์ด๋ค. public Optional findByName(String name) { return store.values().stream() .filter(member -> member.getName().equals(name)) .findAny(); } ์ผ๋จ ๊ฐ๋ ๋ถํฐ ์ง๊ณ ๋์ด๊ฐ๋ณด์. Stream์ ์ฉ๋์ ๊ตฌ์กฐ Java8์์๋ถํฐ ์ง์ํ ๊ธฐ๋ฅ์ผ๋ก, ์ผ์ข ์ ๋ฐ๋ณต๋ฌธ์ ๊ฐ๋จํ๊ฒ ๋ํ๋ธ ๊ฒ์ด๋ผ๊ณ ํ ์ ์๋ค. Stream์ ์ปฌ๋ ์ ์ด๋ ๋ฐฐ์ด, ๋ฆฌ์คํธ ๋ฑ์ ์๋ ๊ฐ๋ค์ ์ฐธ๊ณ ํ์ฌ ๊ทธ ๊ฐ๋ค์ ๋ํด์ ์ฐ์ฐ์ ํด์ฃผ๋..
Before getting started .. // This course is going to deal with pointer basics in C for beginners. // EVERY C COURSE WILL BE IN ENGLISH. // Every question in English or Korean is always welcome :) Hi you all! This is Hannah, your new programming mate! And today we're going to learn about the meaning of pointer and addresses. POINTER and ADDRESSES pointer : A pointer is a 'variable' which stores '..