https://github.com/clementvidon/exams_42
Training method for 42 exams.
https://github.com/clementvidon/exams_42
42 42born2code 42cursus 42exam 42exams 42network 42paris 42projects 42school commoncore exam42 learning-by-doing method methodology methods
Last synced: 7 months ago
JSON representation
Training method for 42 exams.
- Host: GitHub
- URL: https://github.com/clementvidon/exams_42
- Owner: clementvidon
- Created: 2022-01-17T17:13:15.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2024-02-05T08:08:12.000Z (almost 2 years ago)
- Last Synced: 2025-04-07T18:52:41.058Z (8 months ago)
- Topics: 42, 42born2code, 42cursus, 42exam, 42exams, 42network, 42paris, 42projects, 42school, commoncore, exam42, learning-by-doing, method, methodology, methods
- Language: C
- Homepage:
- Size: 275 KB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# EXAMS 42
## Summary
This repository is intended to help me to **learn** functions by heart for the
42 exams. It also aims to **improve** these functions at the same time. For
this purpose I developed the following method.
At level one we find `tool` folder that contains my minimal exam `config`, the
default 42 vimrc, and debugging tools to quickly check the improvements.
Inside the `func` directory there is a folder for each function that we can
encounter during the exams.
Inside each of these folder we find the core of the method, three source files:
- `base.c` functional starting point, *must not be modified*.
- `check.c` the improvement file, with annotation and modifications allowed.
- `try.c` this file will be used and reused to code and recode the function by
heart.
And (optionally) a `doc` and `test` folders.
## Method
The workflow is the following:
1. recode `base.c` function into `try.c`
2. debug `try.c`
3. diff `try.c` and `base.c` into `check.c`
> **HINT** Vim users will like `:h vimdiff`, the `do` and the `dp` commands.
***LEARN***
4. update `check.c` with the mistakes found in `try.c` and document with a
`TODO` comment
ssize_t r; // TODO ssize_t instead of long
***IMPROVE***
4. update `check.c` with comments that keep a track of mistakes found in
`try.c`, the number preceding the `XXX` ( here `2` ) indicates indicates the
number of times the error has been done during `try.c` attempts.
static char *temp; // 2 XXX static keyword missing
***THUS***
Before the exam **I can check my most common mistakes** using `check.c`.
After the exam **I can improve my function** using `check.c`.