We’ll dive into three critical areas:
- Interacting with the System and User:
- You’ve printed output to the screen. But now, we’ll cover more:
- How to read user input.
- How to work with files (read/write data).
- Handling command-line arguments.
- Plus, you’ll get some insights into how your program interacts with the operating system when performing these tasks.
- Dynamic Memory Allocation:
- Why is this important?
- When writing code, you often don’t know in advance how much memory you’ll need. Example: reading from a file with an unknown size.
- Learn how to allocate memory dynamically during runtime.
- Handle situations where data can range from a few lines to millions, without pre-allocating massive amounts of unnecessary space.
- Scaling to Larger Programs:
- As your projects grow, certain principles become key.
- We’ll discuss best practices for managing larger codebases.
- While we won’t tackle massive projects (with thousands/millions of lines), you’ll work through a moderately larger example.
Let’s get started and finish strong!
이번 코스에서는 세 가지 중요한 주제를 다룹니다:
- 시스템 및 사용자 상호작용:
- 지금까지는 화면에 출력을 출력하는 정도였습니다. 이제 더 깊이 들어가 보겠습니다:
- 사용자 입력을 처리하는 방법.
- 파일 다루기 (읽기/쓰기).
- 명령줄 인수 처리.
- 또한, 이러한 작업을 수행할 때 운영 체제와 프로그램이 어떻게 상호작용하는지 살펴봅니다.
- 동적 메모리 할당:
- 왜 중요할까요?
- 코드를 작성할 때, 필요한 메모리 크기를 미리 알 수 없는 경우가 많습니다. 예: 크기를 알 수 없는 파일 읽기.
- 실행 중에 동적으로 메모리를 할당하는 방법을 배웁니다.
- 데이터가 몇 줄에서 수백만 줄까지 변동할 때, 비효율적으로 많은 공간을 미리 할당하지 않고 효율적으로 처리하는 방법을 다룹니다.
- 더 큰 프로그램으로 확장:
- 프로젝트가 커질수록 특정 원칙이 중요해집니다.
- 더 큰 코드베이스를 관리하는 모범 사례를 논의합니다.
- 대규모 프로젝트(수천/수백만 줄)는 아니지만, 중간 크기의 예제를 통해 더 복잡한 프로젝트에 대비합니다.