By Shervin Daneshpajouh
SyllabusSyllabus
•See the syllabus file
2Shervin Daneshpajouh
ReferencesReferences
•C: How to Program (6th Edition)
• Deitel & Deitel
3Shervin Daneshpajouh
Basics Basics of a Typical of a Typical C/CC/C++ Environment++ Environment
C/C++ systems
� Program-development environment
� Language
� C/C++ Standard Library
4
Development EnvironmentDevelopment Environment
•Bloodshed
• www.Bloodshed.net
•Codeblocks
• www.codeblocks.org• www.codeblocks.org
5Shervin Daneshpajouh
Basics Basics of a Typical of a Typical C/CC/C++ Environment++ EnvironmentPhases of C/C++ Programs:
1. Edit
2. Preprocess
3. Compile
4. Link
5. Load
Program is created in
the editor and stored
on disk.
Preprocessor program
processes the code.
Compiler
Compiler creates
object code and stores
it on disk.
Linker links the object
code with the libraries,creates and
Editor
Preprocessor
Linker
Disk
Disk
Disk
Disk
6
5. Load
6. Execute Loader
Primary
Memory
Loader puts program
in memory.
CPU takes each
instruction and
executes it, possibly
storing new data
values as the program
executes.
creates a.out and
stores it on disk
CPU
Primary
Memory
.
.
.
.
.
.
.
.
.
.
.
.
Disk
General General Notes About Notes About C/C++C/C++
Book geared toward novice programmers
� Stress programming clarity
� simple and straightforward manner
� KIS ("keep it simple").
PortabilityPortability
� C and C++ are portable languages
� C and C++ programs can run on many different computers
Compatibility
� Many features of current versions of C++ not compatible
with older implementations
7
8Shervin Daneshpajouh
Why Learning a Programming Language?Why Learning a Programming Language?
� Some Applications
� Office
� Excel
� Engineering� Engineering
� Scientific purpose
Shervin Daneshpajouh 9
Why Learning a Why Learning a Programming Language?Programming Language?
� Some Applications
� Office
� Engineering� Mechanical Eng.
� AVEVA PDMS� AVEVA PDMS
� (Plant Design Tool)
� Programmable Macro Language (PML)
� Fluid Dynamics Computation
� Scientific purpose
Shervin Daneshpajouh 10
PDMS
Why Learning a Why Learning a Programming Language?Programming Language?
� Some Applications
� Office
� Engineering
� Scientific purpose
MATLAB
� Scientific purpose� Numerical Analysis
� MATLAB
Shervin Daneshpajouh 11
Why learn C?Why learn C?
•The most widely used programming language.
•Many scientific instruments are programmed in C
•C is closer to assembly language, so you can have finer control
over what the computer is doing, and thereby make faster
programs. programs.
•There is a free C compiler available (GNU C, gcc), that is of very
high quality and that has been ported to numerous machines.
•UNIX is written in C, so it is easier to interface with UNIX-like
operating systems (such as GNU/Linux) if you write in C.
12Shervin Daneshpajouh
The simplest possible C programThe simplest possible C program
main () {}
13Shervin Daneshpajouh
14Shervin Daneshpajouh