Compiler,Assembler,Linker and Loader

C Programs Building  process based on four stages.

  1. Preprocessing is the first pass of any C compilation. It processes include-files, conditional compilation instructions and macros.
  2. Compilation is the second pass. It takes the output of the preprocessor, and the source code, and generates assembler source code.
  3. Assembly is the third stage of compilation. It takes the assembly source code and produces an assembly listing with offsets. The assembler output is stored in an object file.
  4. Linking is the final stage of compilation. It takes one or more object files or libraries as input and combines them to produce a single (usually executable) file. In doing so, it resolves references to external symbols, assigns final addresses to procedures/functions and variables, and revises code and data to reflect new addresses (a process called relocation)


  1. This comment has been removed by the author.

  2. Very useful post. Did a great job here and explained it preety well. Check this for best c compiler for windows Here you can find dev c/c++, turbo c/c++ compiler and code blocks download link and also how to work on them is explained