How the C compiler
translates
multiple C program files
The C compilertranslatesone C program file
at a time
All information
gathered
in the translation process of
a C program file is
discarded
before the C compiler starts
the translation of the
next C program file
Schematically:
Note:
The final step is to
link (= "merge") the
compiled code
(= program in machine instructions)
into one single
executable program
The final step does
not perform
any checks on
data types !!!
Recallhow the Compiler
translates eachindividual C program file:
The C compiler is
a one-pass compiler:
The C compiler read the
C programonce
While translating the
C program file,
the C compiler will
make implicit function
prototype assumptions for
undefined/undeclared
functions:
When the C compiler
encounter a function call
that is notdefined or declared,
the C compiler will
make an
implicit function prototype
assumption on the
function
(This is probably
the maindifficulty
of understanding
and programming in C for
Java programmers....)