이 레포지토리는 C 언어를 공부하면서
개념을 직접 실험하고 이해한 내용을 기록하는 개인 연구 공간입니다.
문법부터 메모리 구조, 자료형, 포인터, 시스템 개념까지
학습한 내용을 천천히 확장해 나가며 정리합니다.
- 단순히 문법을 외우는 것이 아니라
왜 이런 동작이 일어나는지 근본적으로 이해하는 것 - 작은 코드 실험을 통해 컴퓨터 내부의 동작을 관찰하고 기록
- 메모리·주소·정렬·스택/힙·자료형 표현 등
C를 이용해 시스템적 사고력을 기르는 것 - 시간이 지나도 다시 참고할 수 있는 개인 연구 노트 구축
- 문법 구조와 의미
- 함수 호출, 스택 프레임, 호출 규약
- 포인터, 배열, 구조체, 동적 메모리
- 메모리 레이아웃, alignment, 데이터 표현 방식
- 전처리 → 컴파일 → 어셈블 → 링크
- 실행 파일 구조와 프로세스 구조
- 기초 자료구조 구현
- 재귀 기반 스택 흐름 관찰
- 시간·공간 복잡도 실험
- 실험 → 관찰 → 해석 → 정리
이 흐름 중심의 학습 방식
- 속도보다 깊이 있는 이해를 우선한다.
- 코드는 개념을 검증하고 관찰하기 위한 실험 도구로 사용한다.
- 텍스트, 코드, 다이어그램을 조합해
시간이 지나도 도움이 되는 연구 기록을 만든다. - 레포는 고정된 구조보다
학습이 진행됨에 따라 자연스럽게 확장되는 개인 연구실(Lab) 같은 공간이다.
c-learning-lab/
├── basics/ # 기초 문법 및 코드 실험
├── types_and_memory/ # 자료형, 포인터, 배열, 구조체, 메모리 분석
├── real_numbers/ # 숫자 표현과 관련된 실험 (정수/실수 등)
├── algorithms/ # 자료구조, 알고리즘 구현 실험
├── systems/ # 빌드/링크/프로세스 등 시스템 관련 실험
├── file_io/ # 파일 I/O 실험
├── projects/ # 작은 응용 프로젝트
└── notes/ # 개념 정리, 실험 기록, 사고 흐름 노트