#include #include int main(void) { int *a = (int*)malloc(sizeof(int)); printf("%d\n", a); free(a); a = (int*)malloc(sizeof(int)); printf("%d\n", a); free(a); return 0; } error: cannot initialize a variable of type 'int *' with an rvalue of type 'void *' #include #include int main(void) { int *a = (int*)malloc(sizeof(int)); printf("%d\n", a); free(a); a = (int*)malloc(sizeof(int)); printf("%d\n",..
1. ๋์ ๋ฉ๋ชจ๋ฆฌ ํ ๋น์ด๋? - ๋์ ๋ฉ๋ชจ๋ฆฌ ํ ๋น์ด๋ผ๋ ์๋ฏธ๋ ํ๋ก๊ทธ๋จ ์คํ ๋์ค์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ ๋นํ๊ฒ ๋ค๋ ์๋ฏธ์ด๋ค. - ์ด ๋์ ๋ฉ๋ชจ๋ฆฌ ํ ๋น์ ํ๊ธฐ ์ํด์๋ malloc()์ด๋ผ๋ ํจ์๋ฅผ ์ด์ฉํด์ ์ํํ๋ค. - ๋์ ๋ฉ๋ชจ๋ฆฌ ํ ๋น์ ์ํํ ๋๋ง๋ค ํ ๋น๋๋ ํฌ์ธํฐ์ ์ฃผ์๋ ๋ณ์น์ ์ด๋ค. 2. ๋ฉ๋ชจ๋ฆฌ ๊ตฌ์กฐ - ๋์ ๋ฉ๋ชจ๋ฆฌ ํ ๋น์ ๋ํด ์๊ธฐํ๊ธฐ ์ ์ ๋ฉ๋ชจ๋ฆฌ ๊ตฌ์กฐ์ ๋ํด์ ํ๋ฒ ์ฝ๊ณ ์ค๋ ๊ฒ์ด ์ข์ ๊ฒ ๊ฐ๋ค. ( ์ค๋ช
๋งํฌ ๊ฑธ์ ) - ์ฌ๊ธฐ์ ๋์ ๋ฉ๋ชจ๋ฆฌ ํ ๋น์ ํด๋น๋๋ ๋ฉ๋ชจ๋ฆฌ ์์ญ์ ํ ์์ญ์ด๋ค. 3. ๋์ ๋ฉ๋ชจ๋ฆฌ ํ ๋น ํ๋ ๋ฒ - ๋์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ ๋นํ๋ ๋ฒ์ malloc ํจ์๋ฅผ ์จ์ ํ ๋นํ ์ ์๋๋ฐ, ๋ฉ๋ชจ๋ฆฌ ๋์์ ๊ฐ์ ์ํฉ์ ๋ง๊ธฐ ์ํด free ํจ์์ ์ง์ ์ด๋ค ์ฐ์ด๊ณค ํ๋ค. - ๋ฉ๋ชจ๋ฆฌ ๋์๋ ํ๋ก๊ทธ๋จ์ด ๊ฐ์..
1. ๋ฌธ์ ์๋ฃํ์ ํน์ง - ์ ์ ์๋ฃํ์ธ char๋ฅผ ์ด์ฉํด์ ๋ฌธ์ ํ๊ฐ๋ฅผ ์ ์ฅํ๋ค. ์ ์ ์๋ฃํ์ด๋ฏ๋ก ๋ง์
๋บ์
๋ ๊ฐ๋ฅํ๋ค. - ์ ์๋ ์ซ์๋ฅผ ์๋ฏธํ๋๋ฐ ์ด๋ฅผ ์ด๋ป๊ฒ ๋ฌธ์๋ก ๋ณํํ๋๋ฉด ๋ฐ๋ก ์์คํค ์ฝ๋๋ฅผ ํตํด ๋ณํํ์ฌ ์ฌ์ฉํ๋ค. - 0์ 48, A๋ 65, a๋ 97 ์ ๋๋ง ์ธ์ธ ๊ฒ์ ๊ถ์ฅํ๊ณ ์์ผ๋ ์ธ์ฐ๊ณ ๋์ด๊ฐ์. - C์ธ์ด์์ ๋ฌธ์๋ ''(์์ ๋ฐ์ดํ)๋ก ๋ฌถ์ด์ ํํํ๋ค. - ์์ ๋ฐ์ดํ๋ ๋ฌธ์ ํ๋๋ง ๋ฌถ์ ์ ์๊ณ , ๋๊ฐ ์ด์์ ๋ฌถ์ ์ ์๋ค. 2. ๋ฌธ์ ํจ์ **๋ค์ด๊ฐ๊ธฐ์ ์ C ํ๋ก๊ทธ๋จ์์๋ ํค๋ณด๋, ๋ชจ๋ํฐ์ ๊ฐ์ ๋๋ถ๋ถ์ ์ฝ์ ์ฅ์น๋ ์๋์ผ๋ก ์ด๋ฆฌ๋ ํ์ผ์ฒ๋ผ ๋ค๋ค์ง๋ค. ๋ฐ๋ผ์, C์ธ์ด์์๋ stdin ํ์ค ์คํธ๋ฆผ์ ํตํด ์
๋ ฅ ์ฅ์น๋ฅผ ๋ค๋ฃจ๊ณ , stdout ํ์ค ์คํธ๋ฆผ์ ํตํด ์ถ๋ ฅ ์ฅ์น๋ฅผ ๋ค๋ฃจ๊ฒ..
1. ํฌ์ธํฐ ๊ฐ๋
- ํฌ์ธํฐ ๋ณ์๋ ํน์ดํ ๋ณ์๋ก ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๋ฅผ ์ ์ฅํ๊ณ ์๋ค. - ํน์ ํ ๋ณ์ ์์ฒด๊ฐ ์กด์ฌํ๋ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์์ ๊ฐ์ ๊ฐ์ง๋ค. 2. ํฌ์ธํฐ ๊ด๋ จ ์ฐ์ฐ์ A. ์ฃผ์ ์ฐ์ฐ์(&) : ๋ณ์ ์์ ๋ถ์ด ๋ณ์์ ๋ฉ๋ชจ๋ฆฌ ์์ ์ฃผ์ ๊ฐ์ ๊ตฌํ๋ค B. ํฌ์ธํฐ (*) : ํฌ์ธํฐ ๋ณ์๋ฅผ ์ ์ธํ ๋ ์ฌ์ฉํ๋ค. C. ๊ฐ์ ์ฐธ์กฐ ์ฐ์ฐ์ (*) : ์ ์ธ๋ ํฌ์ธํฐ ๋ณ์๊ฐ ๊ฐ๋ฆฌํค๋ ๋ณ์๋ฅผ ๊ตฌํ๋ค. int a = 5 int *b = &a ์์ ๋ ๋ ๋ค ๊ฐ์ ๊ฐ์ ๊ฐ์ง๋ค. ๊ทธ๋ฆฌ๊ณ ์ ์ธ๋ ๋ค์ *b ๋ผ๊ณ ์ธ ๊ฒฝ์ฐ ๊ฐ์ ์ฐธ์กฐ ์ฐ์ฐ์์ด๋ฏ๋ก 5๊ฐ ๋์ค๊ฒ ๋๋ค. b๋ผ๊ณ ์ฐ๋ฉด ์ฃผ์๊ฐ์ด ๋์ค๊ฒ ๋๋ค. #include int main(void) { int a = 5; int *b = &a; printf("%d\n",*b); return..
1. C์ธ์ด์ ํจ์ ๋ฐํ์๋ฃํ ํจ์๋ช
(๋งค๊ฐ๋ณ์) { ๊ฐ์ข
๋ช
๋ น์ด๋ค; return ๋ฐํํ ๊ฐ; } ** ์ด๋ ๋งค๊ฐ๋ณ์์ ๋ฐํ๊ฐ์ ์์ด๋ ๋๋ ๊ฐ์ด๋ค. ์์๋ ์๋ฃํ์ void ๋ค. ๋ํ๊ธฐ ํจ์ ์์ int add(int a, int b){ return a + b; } int main(void) { printf("%d\n",add(10,20)); return 0; } 2. ์ฌ๊ท ํจ์ - ์๊ธฐ ์์ ์ ๊ณ์ ๋ถ๋ฌ๋ด๋ ํจ์, ๋ฌดํ๋ฃจํ์ ๋น ์ง์ง ์๋๋ก ์ฃผ์ํด์ผํ๋ค. ํฉํ ๋ฆฌ์ผ ์์ #include int factorial(int a){ if(a == 1) return 1; else return a * factorial(a -1); } int main(void) { int n; printf(" ํฉํ ๋ฆฌ์ผ ๊ณ์ฐ start..
1. ์ฐ์ฐ์ ์ข
๋ฅ ์ฐ์ฐ์์ ์ข
๋ฅ๋ ๋๊ฐ ์์ฝํ์๋ฉด ์๋์ ํ์ ๊ฐ๋ค. ๋์
์ฐ์ฐ์ = ์ฐ์ ์ฐ์ฐ์ +, -, *, /, % ๊ด๊ณ ์ฐ์ฐ์ ==, !=, >, =, >,
1. ๋ณ์์ ์์ ๋ณ์(variable) : ๋ณํ ์ ์๋ ๋ฐ์ดํฐ ์์(constant) : ๋ณํ์ง ์๋ ๋ฐ์ดํฐ ** ๋ณ์๊ฐ ํ๋์ ๊ฐ์ ์ํ ์ ์ฅ๊ณต๊ฐ, ๋ฉ๋ชจ๋ฆฌ ์ฃผ์์ ์ด๋ฆ์ ๋ถ์ธ ๊ฒ์ด๋ผ๊ณ ์น๋ค๋ฉด, ๋ณ์ ์ ์ธ์ ์ด๋ค์ ํ์
๊ณผ ์ด๋ฆ ๋ฑ์ ์ ํ๋ ๊ฒ์ด๋ค. 2. ๋ณ์์ ์ ์ธ int a; int a = 10; 3. ๋ณ์์ ์ ์ธ ์์ฉ #include int main(void) { int a = 10; printf("the number is %d. \n", a); return 0; } 4. ๋ณ์์ ์๋ฃํ int ์ผ๋ฐ์ ์ธ ์ ์ํ ํํ ( 4 Byte ) long long ์ซ์๊ฐ ๊ธด ์ ์ํ ํํ double ์ผ๋ฐ์ ์ธ ์ค์ํ ํํ string ๋ฌธ์์ด ํํ bool ์ฐธ/๊ฑฐ์ง ํํ ( 1 bit ) char ํ ๋ฌธ์๋ฅผ ํํ..
https://visualstudio.microsoft.com/ko/downloads/ ์ด ๋งํฌ์์ ๋ด๊ฐ ํ์ํ ์กฐ๊ฑด์ ๋ฐ๋ผ ์ถ์ฒ ํด์ฃผ๋ ํ๋ก๊ทธ๋จ์ ํ์ธ ํด๋ณด์๋๋ ์ด๋ฏธ ์๋ ๋๊ตญ๋ฏผ ํ๋ก๊ทธ๋จ ๋น์ฃผ์ผ ์คํ๋์ค ์ฝ๋ ์๋ค. ๋ค๋ง ํ์ฅ์ ๋๊ฐ ์ ๋๊ฐ ๋ ํ์ํ๋ ๊ฒ. ์๋ ์ ๋์๊ฒ ๋ค. ๊ฒ์์ฐฝ์ ๊ฐ๊ฐ code runner, c ๋ผ๊ณ ์น๊ณ ๊ฐ์ฅ ์์ ๊ฒ์ install ํ๊ณ , ์ ๋
ํด์ผํ ๊ฒ์ code runner ์์๋ ํฑ๋๋ฐํด ๋ชจ์์ ํด๋ฆญํ์ฌ Extension Settings ์์ Extensions > Run Code configuration > Code-runner: Run In Terminal ๋ฐ์ ์ฒดํฌ๋ฐ์ค์ ์ฒดํฌ$ ๋ฐ๋ก ์ด๊ฒ ๊ทธ๋ฆฌ๊ณ ๊ฐ์ Extension Settings ์์ Extensions > R..