C Programming Language에서 메모리 할당 함수인 malloc을 설명하기 이전에, alloc이라는 함수를 확인할 수 있습니다. #define ALLOCSIZE 10000 static char allocbuf[ALLOCSIZE]; static char *allocp = allocbuf; char *alloc(int n) { if (allocbuf + ALLOCSIZE - allocp >= n) { allocp += n; return allocp - n; } else { return 0; } } 위 함수를 보면, allocbuf라는 array를 buffer로 설정하고, 이 buffer을 기준으로 할당을 조절하는것을 알 수가 있습니다. 문제는 if (allocbuf + ALLOCSIZE - al..
C언어의 바이블로 불리는 C Programming Language에서 보면, 초반에 아래와 같은 코드가 등장합니다. #include int main() { int c; while ((c=getchar()) != EOF){ putchar(c); } } 책을 읽기전까지, getchar는 단순하게 사용자의 Input을 받고, 이때 단어 하나만 받아올 수 있다 라고 알고있었습니다. 하지만, 위의 코드를 보면, 1. c를 int형으로 선언한다 2. getchar로 c에다가 input을 받는다 3. (나의 예상)c의 첫 글자가 EOF인지 확인한다. 4. 아니면 첫글자를 화면에 출력하고, 다시 Input을 받는다 였습니다. 하지만 위 코드를 실행해보면, 한 단어가 아니라 입력받은 모든 단어를 출력하는 것을 알 수 있..
- Total
- Today
- Yesterday
- C++
- git
- 컴퓨터그래픽스
- Sort알고리즘
- Greedy알고리즘
- Python
- 사칙연산
- prime number
- 이분탐색
- 자료구조
- AVX
- 프로그래머스
- Search알고리즘
- hash
- stack
- SIMD
- 분할정복
- 병렬처리
- 완전탐색 알고리즘
- GDC
- 코딩테스트
- 동적계획법
- heap
- 알고리즘
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |