Module 26266 (2013)

Syllabus page 2013/2014

06-26266
C/C++

Level 2/I

Hayo Thielecke
10 credits in Semester 2

Links | Outline | Aims | Outcomes | Prerequisites | Teaching | Assessment | Books | Detailed Syllabus


The Module Description is a strict subset of this Syllabus Page. (The University module description has not yet been checked against the School's.)

Relevant Links

Further information about this module,can be found on the module web page .


Outline

The module introduces the C/C++ family of programming languages, including programming language design issues arising from the various extensions of C that have been developed. The module assumes some familiarity with programming in Java, and it will emphasise the differences between C-style languages and Java, such as garbage collection vs memory management and pointers.


Aims

The aims of this module are to:

  • To present the main features of the C/C++ family of programming languages
  • To introduce students to programming styles appropriate for C and/or C++

Learning Outcomes

On successful completion of this module, the student should be able to: Assessed by:
1 program in C, with due care of memory management issues. Examination, Continuous Assessment
2 describe a number of different extensions (such as Objective C, C-sharp), and the ways in which they differ. Examination, Continuous Assessment
3 demonstrate knowledge of the programming language design issues arising from these variants (e.g. garbage collection vs memory management, dynamic vs static typing). Examination, Continuous Assessment
4 Students will be able to write programs using the main features of C++. Examination, Continuous Assessment

Restrictions, Prerequisites and Corequisites

Restrictions:

None

Prerequisites:

06-18190 Software Workshop

Co-requisites:

None


Teaching

Teaching Methods:

Eleven two-hour weekly lectures plus eleven two-hour demonstrator-supervised laboratory sessions.

Contact Hours:

45


Assessment

  • Sessional: 1.5 hr examination (80%), continuous assessment (20%).
  • Supplementary (where allowed): By examination only (100%).

Recommended Books

TitleAuthor(s)Publisher, Date
The C Programming Language Brian W. Kernighan and Dennis M. Ritchie Prentice Hall , 1998
Advanced C++ Programming Styles and Idioms James O. Coplien Addison Wesley ,

Detailed Syllabus

  1. Strings, arrays and pointers; string operations and buffer overflow
  2. Pointers and linked lists
  3. Trees in C: struct and union, enum and switch
  4. Memory management; stack vs heap allocation
  5. Polymorphism, structures and function pointers
  6. C++ classes and objects
  7. C++ templates

Last updated: 3 June 2013

Source file: /internal/modules/COMSCI/2013/xml/26266.xml

Links | Outline | Aims | Outcomes | Prerequisites | Teaching | Assessment | Books | Detailed Syllabus