1.4 KiB
The goal being to be able to understand C code, rather than writing it effectively.
C preprocessor
Produces a new file that compiler will process. Command to preprocessor start line with a # symbol as the first non-whitespace character.
#include : use to pull the contents of one file into the current source file.
For ex to pull the entire content of multiprocessing.h
:
#include "multiprocessing.h"
#define : lets you define a new symbol that gets replaced with a text string .
For ex. #define SEM_FAILED NULL
replace every instance of SEM_FAILED
with the literal string NULL
before the code is sent to the compiler.
#under : erases any previous preprocessor definition from #define. You can have #define effect only a section of the file.
#if : conditional statements, which allow to include/exclude certain sections of the text based on certain conditions.
There are three basic forms of #if in CPython source:
- #ifdef <macro> includes the subsequent text-block if the macro is defined.
- #ifndef <macro> includes the text-block if the specified macro is not defined.
- #if <macro> includes the text-block if macro defined and True.
#pragma : instructions or hint to the compiler. Usually deals with how code is compiled not how it runs.
#error : displays a message and cause the preprocessor to stop executing.