What is C - PowerPoint PPT Presentation

1 / 14
About This Presentation
Title:

What is C

Description:

How does C relate to other OO languages. Types of applications for C . Components of MS's Visual C 6.0 ... Other vendors: Borland, Symantec, Turbo, ... – PowerPoint PPT presentation

Number of Views:43
Avg rating:3.0/5.0
Slides: 15
Provided by: donaldl1
Category:
Tags: borland

less

Transcript and Presenter's Notes

Title: What is C


1
What is C
  • Introduction to the C Programming Language

2
Outline
  • History
  • What is C
  • How does C relate to other OO languages
  • Types of applications for C
  • Components of MSs Visual C 6.0
  • Advantages / Disadvantages of C

3
History of C
  • 1967 "B" and BCPL developed (typeless)
  • 1972 C language developed at Bell Labs
  • Dennis Ritchie wrote C for Unix OS
  • Needed C for work with Unix
  • late 70s C becomes popular for OS development
    by many vendors
  • Many variants of the language developed
  • ANSI standard C in 1987-89

4
History of C (continued)
  • early 80s Bjarne Stroustrup adds OO features to
    C creating C
  • 90s continued evolution of the language and its
    applications
  • preferred language for OS and low level
    programming
  • popular language for application development
  • low level control and high level power

5
Conceptually what is C
  • Alternatives
  • is it C, with lots more options and features?
  • is it an OO programming language with C as its
    core?
  • is it a development environment?
  • On most systems it is a development environment,
    language, and library, used for both procedural
    and object oriented programming, that can be
    customized and extended as desired

6
Versions of C
  • ANSI C
  • Microsoft C (MS Visual C 6.0)
  • Other vendors Borland, Symantec, Turbo,
  • Many older versions (almost annual) including
    different version of C too
  • Many vendor specific versions
  • Many platform specific versions

7
Characteristics of C as a Computer Language
  • Procedural
  • Object Oriented
  • Extensible
  • ...

8
Other OO Languages
  • Smalltalk
  • pure OO language developed at PARC
  • Java
  • built on C/C
  • objects and data types
  • Eifel and others

9
What you can do with C
  • Apps (standalone, Web apps, components)
  • Tiered apps
  • Active desktop (Dynamic HTML, incl Web)
  • Access to MFC
  • Create new controls
  • Create apps with "look and feel" of IE4
  • ActiveX documents (charts, graphs, etc.)
  • Data access (OLE, e-mail, files, ODBC)
  • Integrate components w/ other languages

10
Microsofts C
  • Development Environment
  • project mgmt, editor, debugging tools, user
    interface to tools
  • Visual Studio 6.0
  • Language (
  • compiler, linker, loader, etc.
  • Visual C 6.0
  • Libraries
  • std libraries, iostream, iomanip, stdio, time,
    string, math, etc.
  • Standard Template Library (STL)

11
Disadvantages of C
  • Tends to be one of the less portable languages
  • Complicated!!!
  • 40 operators, intricate precedence, pointers,
    etc.
  • can control everything
  • many exceptions and special cases
  • tremendous libraries both standard, vendor
    specific, and available for purchase, but all are
    intricate
  • Aspects above can result in high cost,
    maintenance and reliability problems

12
Advantages of C
  • Available on most machines
  • Can get good performance
  • Can get small size
  • Can manage memory effectively
  • Can control everything
  • Good supply of programmers
  • Suitable for almost any type of program (from
    systems programs to applications)

13
Steps in Developing a C Program
  • Plan
  • Edit (uses integrated editor)
  • Compile (converts to binary)
  • Link (resolves external references)
  • Load (places into memory)
  • Run (transfers control, executes)
  • IDE reports errors at this step must fix them

14
Objectives for a C System
  • Solves correct problem
  • Correct solution
  • but also
  • Clear documentation (internal and external)
  • Understandable code
  • Maintainable and extendable system
  • Reusable code
  • how about
  • succinct code?? performance??
Write a Comment
User Comments (0)
About PowerShow.com